Hi,
I am sure I put feature requests in for these but I cannot find them!
The backup effectively creates temporary tables with partitions in each dbspace to hold the before images of any pages written during a backup.
If you have multiple temporary dbspaces, one fills and the backup wants more space in tthat temp dbspaces then the backup fails.
My feature request was have it just write to a different temp partition if one of them cannot grow!
Also I did wonder if the before image is say a 16k page and your temp dbspaces are 2k then presumably it split the write up into 8 2k writes at some level internally. It would be best if it could include temporary dbspaces with different page sizes in DBSPACETEMP and it would prefer the dbspaces with page sizes which most closely matched the before image page size.
I added new ideas
https://ideas.ibm.com/ideas/INFX-I-606 - Allow temp tables and backup before images to handle temp dbspaces which fill up.
https://ideas.ibm.com/ideas/INFX-I-607 - Backups to use temp dbspaces with most closlely matching page size.
Regards,
David.
------------------------------
David Williams
------------------------------
Original Message:
Sent: Fri March 01, 2024 04:28 AM
From: Dennis Melnikov
Subject: What is dbsname BEFIMAGE?
Art,
The BEFIMAG tables are partitioned across all of the temp dbspaces so all temp space mentioned in DBSPACETEMP will be used
tmpdbs3 was the only tempspace occupied. If DBSPACETEMP is not set in environment, does onbar use the config parameter, or a random single tempdbs?
------------------------------
Sincerely,
Dennis
------------------------------
Original Message:
Sent: Thu February 29, 2024 06:22 AM
From: Art Kagel
Subject: What is dbsname BEFIMAGE?
Dennis:
Yes, during an archive, physical log pages associated with the dbspace(s) currently being archived are copied into a temp table for safety (since any checkpoint during the archive will clear out the physical log), that/those are the BEFIMAG temp tables. Once each dbspace archive has completed the contents of the associated BEFIMAG table is appended to the archive and deleted. During an ontape archive only one dbspace is archived at a time, but during a parallel onbar archive there may be several dbspaces being archived in parallel so there will be multiple BEFIMAG tables extent at any given time during the full archive. Yes, as well, if the temp dbspaces are not large enough the archive will fail. The BEFIMAG tables are partitioned across all of the temp dbspaces so all temp space mentioned in DBSPACETEMP will be used. Note that these tables are competing for temp space with any production temp tables as well.
For completness: This process of appending physical log records to the archive is the innovation that allowed Informix to be the first RDBMS that could be successfully archived while transactions were being actively processed. Before Informix OnLine v5.01 all RDBMS systems either had to be taken offline or had to be put into an "archive mode" that blocked transactions (similar to Informix's external backup procedure with onmode -c block/unblock) during an archive. The physical log records captured during the archiving of a dbspace and appended to the archive will overwrite any pages that were modified and flushed by checkpoints happening during the archive thereby restoring them to their consistent content as of the checkpoint that started the archive processing.
Art
------------------------------
Art S. Kagel, President and Principal Consultant
ASK Database Management Corp.
www.askdbmgt.com