ALERT: Some images may not load properly within the Knowledge Base Article. If you see a broken image, please right-click and select 'Open image in a new tab'. We apologize for this inconvenience.

How to change the IMS database dataset access method from VSAM/ESDS to OSAM?

book

Article ID: 54852

calendar_today

Updated On:

Products

CA Distributed Database Management CA Database Analyzer for DB2 for Oracle Database Analyzer (IMS Tools) Mainframe Configuration Manager for IMS for z/OS IMS TOOLS - MISC Compress Data Compression (IMS Tools) Database Analyzer for IMS for z/OS Database Copier for IMS for z/OS Database Organizer for IMS for z/OS Mainframe Extended Terminal Manager (IMS Tools) High Performance Recovery for IMS for z/OS Database Organizer (IMS Tools) Mainframe Program Restart Manager for IMS for z/OS Secondary Index Builder for IMS for z/OS Secondary Index for IMS for z/OS

Issue/Introduction

Description:

In specific scenarios it makes sense to change the access method for the IMS primary database from VSAM/ESDS to OSAM (e.g. if the dataset is going to reach the 4GB limit for VSAM datasets).
This document lists the steps being necessary to convert from VSAM/ESDS to OSAM.

Solution:

These are the steps being necessary to change the IMS database dataset access method from VSAM/ESDS to OSAM :

  1. run DBCOPY to take an Image Copy from the VSAM database

  2. run DBO Unload against the VSAM database using the old DBD

  3. change the DBD of the primary database using "OSAM" instead of "VSAM" on the DBD's ACCESS parameter

  4. if option "BLOCK" is used on the old DBD's DATASET parameter, change to option "SIZE" instead of "BLOCK"
    (SIZE corresponds to the actual BLKSIZE of the physical dataset, no overhead will be added by IMS)

  5. always use an EVEN value for the SIZE option (to enable a dataset size of 8GB for OSAM - using an ODD value
    would result in limiting the OSAM dataset to 4GB)

  6. re-gen the new DBD and all ACBs containing this DBD

  7. delete (or rename) the old VSAM dataset

  8. amend the IDCAMS step changing the "DEL/DEF CLUSTER" statements to "DELETE NONVSAM/ALLOCATE"
    (to pre-allocate the OSAM dataset as sequential flat file - do NOT use DCB attributes, they will be allocated by IMS)

  9. include the appropriate OSAM buffers to any DFSVSAMP DD buffer allocations (instream as well as PDS member)
    and to the DFSVSMxx PROCLIB member for online regions
    (e.g. use IOBF=(24576,4) if SIZE=24576 has been used in the new DBD)

  10. run DBO Reload to build the OSAM database using the new DBD

  11. run DBCOPY to take an Image Copy from the new OSAM database

Because the old Recon entries (belonging to the VSAM database) are still present in DBRC, database recoveries to a
timestamp BEFORE changing the database to OSAM are still possible (but of course the OLD VSAM-DBD must be used
for this recovery run, a different database dataset should be used (to keep the current OSAM database), and the recovery
run entry should NOT be registered to DBRC).
If recoveries to the old VSAM database are not wanted anymore, the old Recon entries could be deleted by deleting/
redefining this database to DBRC after re-genning the new DBD (step 6.).

Environment

Release:
Component: DBO