Usability states of snapshot backup operations

To view the usability states of a DB2® snapshot backup, enter the following command: ./fcmcli -f inquire_detail. The output from this command shows a comma-separated list of the current usability states.

...
Type    Partition  Backup-ID       TSM Backup-ID    State       DevClass  TargetSet  BackgroundCopy        
BytesToBeFlashCopied

#BACKUP NODE0000   20130827214721  -                IN_PROGRESS MIRROR1   1          3.000 GB of 3.000 GB  
3.000 GB        
        UsabilityStates: REMOTELY_MOUNTABLE,REPETITIVELY_RESTORABLE,SWAP_RESTORABLE,PHYSICAL_PROTECTION,FULL_COPY,
TAPE_BACKUP_PENDING,TAPE_BACKUP_FAILED
...
A snapshot backup generation can have one or more of the following states to indicate how it can or must be used by other IBM® Storage Protect Snapshot functions.
Table 1. Usability states
Usability state value Meaning
REMOTELY_MOUNTABLE Backup data can be mounted from a remote system.
REPETITIVELY_RESTORABLE Backup data can be restored. The image can be used multiple times.
DESTRUCTIVELY_RESTORABLE Data can be restored. After the restore, other backups and possible the backup to be restored can potentially be deleted.
SWAP_RESTORABLE Restore is possible by using the backup volumes directly rather than copying the data back to the source volumes.
PHYSICAL_PROTECTION The snapshot ensures protection from physical failures on the source volumes, there is no longer a dependency on the source volumes. This state does not necessarily mean that a FULL_COPY must be created with each snapshot. For example, block-level continuous data protection (CDP) mechanisms typically replicate the data only once, and then record changes only.
FULL_COPY A full copy of the data was generated.
INCOMPLETE A portion of the data that was backed up is deleted and can no longer be restored. This situation can happen, for example, after a partial restore of an old backup that is only DESTRUCTIVELY_RESTORABLE.
MOUNTING A mount operation was requested on the backup server.
MOUNTED This backup is mounted on a backup server.
DELETING Indicates that a backup is marked for deletion. The deletion was requested.
DELETED Indicates that the backup was deleted.
BACKGROUND_MONITOR_PENDING Indicates that a required background copy process is not yet active or not yet finished. The device agent checks for backups with this state and monitors the associated volumes until the background copy is finished. After it finishes, the usability state is changed to FULL_COPY.
TAPE_BACKUP_PENDING Indicates that a requested backup to an IBM Storage Protect server is not yet started or is not yet finished successfully. The offload agent checks for backups with this state, and runs the requested tape backup. After the tape backup finishes successfully, the usability state is changed to TAPE_BACKUP_COMPLETE. If the tape backup stops with an error, the TAPE_BACKUP_PENDING state remains set, TAPE_BACKUP_IN_PROGRESS is reset, and a retry counter is incremented.
TAPE_BACKUP_IN_PROGRESS Indicates that the requested tape backup was started by the IBM Storage Protect Snapshot offload agent. If the backup fails, this state is reset. In a DB2 DPF environment, this state is used to indicate that some partitions are successfully backed up and others are still pending backup to tape.
TAPE_BACKUP_COMPLETE Indicates that the requested tape backup is finished by the IBM Storage Protect Snapshot offload agent. In a DB2 DPF environment, the TAPE_BACKUP_COMPLETE state is set when all the partitions of the database are successfully backed up to tape.
TAPE_BACKUP_FAILED Indicates that the tape backup of the IBM Storage Protect Snapshot offload agent was not successful and the operation is not retried. In a DB2 DPF environment, the TAPE_BACKUP_FAILED state is set when at least one partition of the database failed during tape backup.
CLONE_DATABASE Indicates that an IBM Storage Protect Snapshot cloning operation was started.
RESTORING Indicates that an IBM Storage Protect Snapshot restore operation was started.

Usability state diagrams

The following usability state diagrams show the state changes during different operations. The green arrows are used for actions that you can start. The blue arrows are used for actions that are done automatically by IBM Storage Protect Snapshot. The black arrows indicate IBM Storage Protect Snapshot operations that you can use to change usability states.

Snapshot backup

The first state diagram shows the usability state changes during an IBM Storage Protect Snapshot backup operation. Depending on the storage system that is used some states differ.

For example, on XIV®, the snapshot backup is immediately restorable and the restore can be repeated multiple times. After successfully processing on DS8000®, and SAN Volume Controller and Storwize family devices, the BACKGROUND_MONITOR_PENDING usability state is changed to FULL_COPY and PHYSICAL_PROTECTION by a monitoring daemon (acsgen -D) when a COPY snapshot backup was requested.

Figure 1. Usability States during snapshot backup

This figure is explained in the preceding paragraph.

Snapshot restore

The second state diagram shows the usability state changes during an IBM Storage Protect Snapshot restore operation. On the DS8000 and SAN Volume Controller storage systems, the usability states change during a snapshot restore operation.

For DS8000 and SAN Volume Controller systems, the BACKGROUND_MONITOR_PENDING state is turned on in a RESTORING state. The background monitor daemon (acsgen -D) resets both states when the copy process in the storage system finishes.

For XIV there is no usability state change during restore processing.
Figure 2. Usability states during snapshot restore

This figure is explained in the preceding three paragraphs.

Snapshot delete

The next state diagram shows the usability state changes during an IBM Storage Protect Snapshot delete operation. There are two types of delete operations: delete and delete with force option. For both types, the snapshot backup is set to the DELETING state. After processing completes, the background monitor daemon (acsgen -D), switches the states to DELETED.

Snapshots on XIV systems are deleted, and the snapshot backup is removed from the IBM Storage Protect Snapshot repository by the background monitor daemon.

On the DS8000 and SAN Volume Controller storage systems, the snapshot relations are not deleted by the background monitor operation unless the delete force option was used on the delete command. For these systems, the snapshot backup is not deleted from the IBM Storage Protect Snapshot repository. Instead, the FlashCopy relations of a deleted snapshot backup can be reused when a new backup is created.
Figure 3. Usability states during snapshot delete

This figure is explained in the preceding paragraph.

Snapshot mount

The next state diagram shows the usability state changes during an IBM Storage Protect Snapshot mount operation. You can start a snapshot mount operation by using the mount function of the command-line interface or start it automatically during the creation of a snapshot backup. In the latter case, it is named a forced mount operation. In either case, the mount operation first changes the state to MOUNTING. If the mount operation finishes successfully, the state changes from MOUNTING to MOUNTED. If the mount operation fails, the state stays MOUNTING. The only operation that is allowed to remove a MOUNTING or MOUNTED state is a successful IBM Storage Protect Snapshot unmount operation. If the unmount operation finishes successfully, the MOUNTING or MOUNTED state is removed. If the unmount operation fails, the state remains as MOUNTING or MOUNTED. An unmount force operation is not needed for unmounting unless an offloaded tape backup is in progress.
Figure 4. Usability states during snapshot mount

This figure is explained in the preceding paragraph.

Snapshot offload

The last state diagram shows the usability state change during an IBM Storage Protect Snapshot offload operation. You can start a snapshot offload operation with the tape_backup function of the command-line interface. Alternatively, run it automatically with the offload agent that is running in the background (fcmcli -D). If the snapshot backup is not already mounted successfully, a mount operation is started automatically. The mount operation changes the state first to MOUNTING and then to MOUNTED. After that or in case that the snapshot backup was already mounted, the offload operation adds the state TAPE_BACKUP_IN_PROGRESS and runs the offloaded tape backup. If this operation is successful, the state switches from TAPE_BACKUP_IN_PROGRESS to TAPE_BACKUP_COMPLETE. Otherwise, the TAPE_BACKUP_IN_PROGRESS state switches to a TAPE_BACKUP_FAILED state and the TAPE_BACKUP_PENDING state persists. In either case, the automatic unmount operation is started and the MOUNTED state is removed when the operation completes successfully. If the mount operation fails, or the tape backup operation stops then the MOUNTED or MOUNTING state remains. The only operation that can remove these states is a successful IBM Storage Protect Snapshot unmount operation. If the unmount operation finishes successfully, the MOUNTED or MOUNTING state is removed. If the unmount operation fails, the states are not removed. An unmount force operation is only needed for unmounting when an offloaded tape backup is in progress (TAPE_BACKUP_IN_PROGRESS is still set). The unmount force operation resets the TAPE_BACKUP_IN_PROGRESS state when it successfully completes the unmount operation.
Figure 5. Usability states during snapshot offload

This figure is explained in the preceding paragraph.

The usability state TAPE_BACKUP_PENDING can be removed by using the IBM Storage Protect Snapshot function fcmcli -f update_status with the option -S TSM_BACKUP=NO. This state is also removed by starting a new snapshot backup with the option TSM_BACKUP[_FROM_SNAPSHOT] LATEST. This option automatically removes the usability state TAPE_BACKUP_PENDING from all snapshot backups that exist in the IBM Storage Protect Snapshot repository.