IMAGE/SQL with TurboIMAGE/XL Enhancements (Continued) [ COMMUNICATOR 3000 MPE/iX Release 5.5 (Non-Platform Software Release C.55.00) ]

COMMUNICATOR 3000 MPE/iX Release 5.5 (Non-Platform Software Release C.55.00)
IMAGE/SQL with TurboIMAGE/XL Enhancements (Continued)
TurboIMAGE/XL Enhancements (Continued)
DBRECOV.
Beginning with MPE/iX 5.0 Express 3, DBRECOV has been enhanced to support
significantly larger logging cycles. Internal tables have been expanded
by four to five times the size of the internal tables in the previous
versions of DBRECOV.
As of MPE/iX Release 5.5, DBRECOV version C.06.10 has been enhanced to
perform rollforward recovery of TurboIMAGE/XL databases stored using the
new TurboSTORE/iX 7x24 True-Online Backup (described as 7x24 true-online
backup with the ONLINE=START or ONLINE=END options).
Benefits.
The benefits of using 7x24 true-online backup to store TurboIMAGE/XL
databases are as follows:
* You can store one or more TurboIMAGE/XL databases, along with
their related files such as the TC file and the third-party index
files, if any.
* You can actually perform 7x24 true-online backup, that is, the
database can be stored when it is open for read/write access, or
closed.
* You don't need to stop the user log process before backup, if
logging is enabled. Also, you don't need to start a new log cycle
after the backup. Therefore, the rollforward recovery, if enabled
for rollforward, will commence from the middle of the log file,
and it is all transparent to you. That is, you don't need to use
any new option for DBRECOV!
NOTE If your database is opened exclusively, such as with mode 3 or 7,
7x24 true-online backup does not store your database, and reports
an error:
DATABASE NOT STORED: UNABLE TO STORE SOME DATABASE FILES
BASED ON THE SELECTION CRITERIA, NO FILES WERE STORED. (S/R 1713)
To summarize, unlike DBSTORE and STORE, you may have your database(s)
open for access, and you can still perform the backup, and later restore
it to perform rollforward recovery, when necessary.
Databases Enabled for Roll-Back Recovery.
Databases enabled for roll-back recovery are not affected by using either
DBSTORE, STORE, or 7x24 true-online backup. Furthermore, if your
database is enabled for rollforward recovery and you don't use 7x24
true-online backup to store your database, you are not impacted by this
enhancement to DBRECOV, that is, you may continue to exercise your
existing procedures.
If you don't use DBRECOV to perform recovery, or your database is not
enabled for user logging, you can still use 7x24 true-online backup to
store your database(s). For more information on 7x24 true-online backup,
refer to the following documents:
* Communicator article, "Introducing the TurboSTORE/iX 7x24
True-Online Backup Product," in Chapter 3, "System Management"
* Communicator article, "STORE and TurboSTORE/iX 7x24 True-Online
Backup New Functionality," in Chapter 10, "Technical Articles"
* STORE and TurboSTORE/iX Products Manual (B5151-90001)
Database Rollforward Recovery Using 7x24 True-Online Backup.
This article emphasizes how to perform rollforward recovery when your
database is stored using 7x24 true-online backup.
When performing a 7x24 true-online backup, you want to know at what point
in time the backup occurred, especially when your database is open for
modification. This is helpful when performing a rollforward recovery so
you know at what point all files were in a logically consistent state at
the same time for backup and later a subsequent restore for recovery.
This is the point called the sync point, where all data set files are
synchronized. Also, it means this the point when the TurboIMAGE/XL
database is quiesced for a short duration, that is, it is in a logically
consistent state and there is no active transaction in progress. All
ongoing transactions, if any, are allowed to be completed before the sync
point.
The TurboSTORE 7x24 True-Online Backup product has introduced two new
options to be used with the STORE command. The ONLINE=START option
allows you to have the sync point at the beginning of a 7x24 true-online
backup, and the ONLINE=END option permits you to have the sync point at
the end of a 7x24 true-online backup. The ONLINE=START option has the
following advantages over ONLINE=END:
* Allows your database to be restored on an earlier version of
MPE/iX.
* Allows faster partial (selective, not @.@.@) restores, since sync
at end requires RESTORE to read the log files (used for backup)
from the end of the last piece of media.
* Spreads log data throughout the backup media, and hence, is less
vulnerable to media errors.
\ \ \ Important Details \ Please Read All true-online backups created
with the sync point at the
beginning can be restored on any
MPE/iX system. However, backups
created with the sync point at the
end can only be restored or
verified on MPE/iX Release 5.5 or
later. If you know at the time of
performing the backup that the
database(s) must be restored onto
an earlier system, create the
backup with the sync point at the
beginning. This is independent of
using user logging and DBRECOV.
To perform rollforward recovery of your database stored using 7x24
true-online backup, the following requirements must be adhered to:
* Your system must be up on MPE/iX Release 5.5 or later.
* LOGID must include the AUTO option. If it was not used in the
GETLOG command, use the ALTLOG command to include the AUTO option.
:GETLOG imageid;log=image001,DISC;pass=wontell;auto
or
:ALTLOG noautoid;auto
Refer to the MPE/iX Commands Reference Manual (Volumes I and II)
(32650-60115) for more information on these commands.
* LOG process must remain active when storing the database even when
the database is not open. That is, LOG logid,STOP must not be
issued before storing the database. This is because the logging
information which is dynamic in nature, is incorporated in the
root file when the database is stored. This dynamic logging
information can only be obtained when the log process is active.
It is used later when performing rollforward recovery.
* One of the new options, ONLINE=START or ONLINE=END of the
TurboSTORE ONLINE command, must be employed when performing the
backup.
:FILE musicbk;dev=tape
:STORE music;*musicbk;online=start
* After the backup is completed, purge all log files preceding the
one in use when the backup was initiated. It is essential that
you retain the one used when backup was initiated and the ones
following that. These are the log files that will be needed later
to perform rollforward recovery.
To find out the log file used by 7x24 true-online backup, employ
the SHOW database ALL command of DBUTIL, which is enhanced to
display the time, date, and the log file name used for the 7x24
true-online backup. Some examples of the SHOW database ALL
command when using 7x24 true-online backup are given below.
1. When 7x24 true-online backup is used, but user logging is
not used:
Access is enabled.
.
.
Logging is disabled.
.
.
Database last stored using True-Online Backup on
THU, JAN 18, 1996, 3:49 PM.
2. When 7x24 true-online backup is used with user logging
enabled:
Access is enabled.
.
.
Logging is enabled.
.
.
Database last stored using True-Online Backup and
log file NLOG007 on THU, JAN 18, 1996, 6:06 PM.
In this case, you may purge log files NLOG001 up to
NLOG006. With the AUTO option of the GETLOG command, log
files up to NLOG999 will be automatically created when
needed. After that, the log file NLOG001 is automatically
created and used as is done today. If the log file, next
in sequence to be automatically created, already exists,
DBOPEN will fail. As the log files are automatically
created in a round-robin fashion as done today for the AUTO
option, you will have to take extra measures to ensure that
the log files, logically related to your database for
recovery, are properly maintained. One way is to always
start a new log cycle beginning with the first log file,
NLOG001, of the log file set.
Error Message Enhancements.
* Broken Chain Error
The existing error message is:
BROKEN CHAIN - FORWARD AND BACKWARD POINTERS NOT CONSISTENT
The new error message is:
BROKEN FORWARD CHAIN: SET # PATH # ENTRY # #
or
BROKEN BACKWARD CHAIN: SET # PATH # ENTRY # #
Due to current restrictions on DBERROR, the 32-bit entry number is
split into two 16-bit numbers in the display. If the DBGET is
first in the chain, the entry number is 0 0.
The status register values are:
Status 16-bit Word 0 --> Condition Code
1 --> Set Number
2-3 --> Record #
4 --> 0 - Forward, 1 - Backward
5 --> Path #
6-7 --> Address of Base
8-9 --> Forward or Backward Record #
(Mode 5 - FWD, 6 - BWD)
* Bad Record Pointer Error
This error is returned under the following circumstances:
* DBGET mode 5 - when the user has just done a DBFIND and the
forward chain pointer in the master record is invalid and
outside of the detail data set capacity.
* DBGET mode 6 - when the user has just done a DBFIND and the
backward chain pointer in the master record is invalid and
outside of the detail data set capacity.
The existing error message is:
INTERNAL TurboIMAGE/XL ERROR RETURNED ( -0307 )
The new error message is:
Bad record pointer for path # in set #
The status register values are:
Status 16-bit Word 0 --> Condition Code
1 --> Path #
2-3 --> Record #
4 --> 0
5 --> Acc. Mode, PCODE
6-7 --> Address of Base
8 --> Mode of Intrinsic
9 --> Set #
* No Chain Head Error
This error is returned under the following circumstances:
* DBPUT into a detail with no corresponding manual master
entry.
* CIUPDATE into a chain with no corresponding manual master
entry.
The existing error message is:
For DBPUT,
No chain head (master entry) for path #
For DBUPDATE,
DBUPDATE: No chain head (master entry) for path #
The new message is:
a) For DBPUT,
No chain head (master entry) for path # in set #
b) For DBUPDATE,
DBUPDATE: No chain head (master entry) for path #
in set #.
The status register has one change in each case:
For DBPUT: Previously unused, status word 1 = Set number
For DBUPDATE: Previously unused, status word 3 = Set number
* Lost Space in Dataset (TurboIMAGE/XL abort)
The existing error message is:
LOST FREE SPACE IN DATA SET #.
The error message is unchanged for master data sets:
LOST FREE SPACE IN DATA SET #.
But for detail data sets, the new error message is as follows:
LOST FREE SPACE IN SET #, ENTRY # ACTIVE.
Other Enhancements.
* Enhanced Database Integrity
The DBPUT and DBUPDATE commands check the integrity of neighboring
entries to detect possible data corruption before inserting into a
chain.
* DBUTIL
DBUTIL is now a native-mode program. In addition, a new command,
DETACH, is added to detach the database from all DBEs the database
is attached to. The new command is DETACH dbname.
* DBSCHEMA
DBSCHEMA is now a native-mode program.