Datacom DBUTLTY SEQ=PHYSICAL BACKUP receives RC 46(1) error.
search cancel

Datacom DBUTLTY SEQ=PHYSICAL BACKUP receives RC 46(1) error.

book

Article ID: 18708

calendar_today

Updated On:

Products

Datacom DATACOM - AD COMMON SERVICES FOR Z/OS

Issue/Introduction

 Trying to back up Datacom database without stopping the application using SEQ=PHYSICAL.  The job fails with a RC 46(1) at the point to specify SEQ=NATIVE.

Environment

Component: CA90S

Resolution

There are two types of backups that can be created with Datacom DBUTLTY.   Backups where all the data is in Native Key sequence (SEQ=NATIVE), and where the data is taken directly from the disk device in no particular order (SEQ=PHYSICAL).

Generally, a SEQ=PHYSICAL backup is taken when a "hot" or "dirty" backup is desired; i.e., the data is not at a syncpoint and the application is not at a steady state where all the tables are synchronized. This type of backup is also the only kind that can be taken without stopping the application and closing the database in the Multi-User Facility (called MUF). However, depending on the options selected for the BACKUP command, it is possible that the SEQ=PHYSICAL backup will require exclusive control of the database, just as if SEQ=NATIVE was specified.

If you specify the option UPDATE=YES, this will prevent the job from running with the database open. According to the Datacom/DB DBUTLTY Reference Guide:

UPDATE=
Indicates whether the database can be open for update at the start or during the backup.
Note: Only valid if SEQ=PHYSICAL.
NO - Allows tables in the database to be updated and allows the INIT or LOAD functions on the data area during the backup.
YES - Specifies that Datacom/DB determines that the data area is loaded with a loaded Index and that the database is not open for update. During the backup, the database may not be opened for update.

Therefore, in order to use SEQ=PHYSICAL while the database is open and being used by the application, it is necessary to specify UPDATE=NO on the BACKUP command. This will also apply to the DBUTLTY EXTRACT command with SEQ=PHYSICAL.

As a side note, in order to have the most current data available for the BACKUP, since SEQ=PHYSICAL reads directly from the disk copy of the file and there could be updates in the buffers, it is desirable to flush the buffers to disk before running the BACKUP command. There are several ways to do this, but one that we have found to be least disruptive is to use the ACCESS DBID=###,STATUS=WRITE command just prior to the BACKUP command.