db2ACSDelete - delete recovery objects that were created using Db2 Advanced Copy Services (ACS)

Deletes recovery objects that were created using Db2 Advanced Copy Services (ACS)

Include file

db2ACSApi.h

Syntax and data structures


/* ==========================================================================
 * Delete
 * ========================================================================== */
db2ACS_RC db2ACSDelete(
               db2ACS_ObjectID           objectID,
               db2ACS_CB               * pControlBlock,
               db2ACS_ReturnCode       * pRC );

Parameters

objectID
Data type: db2ACS_ObjectID

A db2ACS_ObjectID is a unique identifier for each stored object, which is returned by a query to the storage repository. A db2ACS_ObjectID is guaranteed to be unique and persistent only within the timeframe of a single Db2 ACS session.

The database manager can use db2ACSQuery() to obtain a valid objectID to pass to db2ACSDelete().

pControlBlock
Data type: db2ACS_CB *

db2ACS_CB contains fundamental information required to initialize and terminate a Db2 ACS session.

Before calling db2ACSDelete(), the database manager populates the following fields:


     pControlBlock->handle
     pControlBlock->vendorInfo
     pControlBlock->options

pRC
Data type: db2ACS_ReturnCode *

db2ACS_ReturnCode contains diagnostic information including message text and error codes specific to the storage hardware. The contents of a db2ACS_ReturnCode parameter for a Db2 ACS API function call will be recorded in the database manager diagnostic logs.

The database manager allocates the memory for this parameter, and passes a pointer to that instantiated object to the function. The database manager is responsible for freeing this memory.

The Db2 ACS API driver populates the fields of pRC before returning.

Return Codes

Table 1. Return codes
Return code Description Notes
DB2ACS_RC_OK The operation was successful. The specified object is deleted. No further Db2 ACS operations can be performed on that object.
DB2ACS_RC_DELETE_FAILED The Db2 ACS API driver could not successfully delete snapshot backup objects specified by the database manager. The Db2 ACS API driver encountered an error. The database manager cannot use the Db2 ACS API session.
DB2ACS_RC_INV_DEV_HANDLE The database manager passed a storage device handle that is invalid. The Db2 ACS API driver encountered an error. The database manager cannot use the Db2 ACS API session.
DB2ACS_RC_DEV_ERROR There was an error with a storage device, such as a tape drive. The Db2 ACS API driver encountered an error. The database manager cannot use the Db2 ACS API session.
DB2ACS_RC_IO_ERROR The Db2 ACS API driver encountered an error resulting from input or output operations. The Db2 ACS API driver encountered an error. The database manager cannot use the Db2 ACS API session.
DB2ACS_RC_OBJ_NOT_FOUND The Db2 ACS API driver could not find the snapshot backup object specified by the database manager.  
If the Db2 ACS API driver encounters an error, the driver might abort a Db2 ACS operation. The Db2 ACS session cannot be used for any action other than the following:
  • If a call to db2ACSBeginQuery() previously succeeded the database manager can call db2ACSEndQuery()
  • If a call to db2ACSBeginOperation() previously succeeded, the database manager can call db2ACSEndOperation()
  • If a call to db2ACSInitialize() previously succeeded, the database manager can call db2ACSTerminate()

For more information about Db2 ACS API return codes, see the topic: Db2 Advanced Copy Services (ACS) API return codes.

Usage notes

When the database manager calls db2ACSDelete, the Db2 ACS API driver deletes the recovery object identified by objectID.

The database manager calls db2ACSDelete when a user calls db2acsutil with the DELETE parameter.