z/OS DFSMS OAM Application Programmer's Reference
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


Programming notes

z/OS DFSMS OAM Application Programmer's Reference
SC23-6865-00

The programming notes that follow may be relevant as you code your application interface:

  • Optional input parameters on the OSREQ macro may be omitted. OAM processing identifies omitted optional input parameters as follows:
    • If the optional input parameter has not been specified on any of the OSREQ macro forms (MF=L, MF=M, or MF=E), the parameter pointer is zero.
    • If the optional input parameter is specified on one of the OSREQ macro forms but the value identified by the parameter is null, then the parameter has the appropriate null value. The concept of null is different for different parameters. A null RETPD parameter value is zero. A null STORCLAS parameter value is indicated by either a length value of zero or the entire name containing blanks.
    • If the optional input parameters MGMTCLAS and STORCLAS are omitted, these parameter values are supplied by the ACS routines, as described in OSREQ keyword parameter descriptions.
  • If you do not specify a collection name on any function other than ACCESS or UNACCESS, STOREPRT, or STOREEND a return code and a reason code are generated, and the requested function is not performed. The collection name is required if the function is to be completed. If a specified collection name does not exist in the catalog for any function other than STORE, STOREBEG, ACCESS, or UNACCESS, a return code and a reason code are generated.
  • When an MVS catalog entry is created for a new collection on a STORE or STOREBEG function or the specified storage class or management class is overridden by the ACS routines, a warning return code of 4 and a reason code with the fourth byte indicating the processing status are generated. The conditions are possible in all combinations. The processing status in the fourth byte of the reason code contains individual bits that indicate the presence or absence of each of the conditions.
  • The caller must establish synchronization points for DB2 inserts, updates, and deletes for the OSREQ functions STORE, STOREEND, DELETE, CHANGE, and RETRIEVE as soon as possible (to minimize DB2 timeouts or deadlocks), depending on return code. The synchronization must occur within 24 hours for objects stored in the file system (to avoid loss of data).
  • In order to allow your application to establish synchronization points in DB2, the DBRM from your application program must be bound in the CBRIDBS plan. The SAMPLIB job CBRABIND (or CBRIBIND for DASD-only users) is used to create the CBRIDBS plan in DB2. For more information on the CBRABIND, CBRIBIND jobs, and CBRIDBS plan, refer to the z/OS DFSMS OAM Planning, Installation, and Storage Administration Guide for Object Support.

    If your application uses the IADDRESS keyword, the application connection to DB2 must be established and have an open thread. The plan identified for the open thread can include any DBRMs or packages that are needed by the application. However, it must also contain the DB2 packages created by the CBRIBIND job for the CBRIDBS plan. For more information on the bind jobs or on the DB2 plans, refer to z/OS DFSMS OAM Planning, Installation, and Storage Administration Guide for Object Support.

  • If the OSREQ macro is invoked and either the OSREQ parameter list or the token area is in nonaddressable storage, a program check occurs within the executable OSREQ macro code. For diagnostic purposes, the potential reason code for the specific error is preloaded into register 0 before storage is accessed. The register 0 contents in the abend summary should contain a reason code that indicates the parameter or storage problem. This also applies if the token contents have been corrupted before invoking the OSREQ macro.
  • If the return code word or reason code word are not located in addressable storage, the return and reason codes are only found in general registers 15 and 0, respectively, upon return from OSREQ.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014