DFS0730I UNABLE TO OPEN OR CLOSE DATASET WITH DDNAME ddname FOR REASON x, yy, z DATABASE dbdname programid

Explanation

An error occurred when IMS tried to open or close a database. ddname is the DD statement name of the data set on which the error occurred. x, yy represents the major and minor reason codes. The data set ddname is a part of the DBD dbdname. If an error occurred when IMS tried to open a database, programid is included in the message. When a scheduler message block (SMB) is present, programid represents the transaction code (TRN). When an SMB is not present, programid represents the PSB name.

The following information provides the explanation, programmer response, and problem determination codes for the various major and minor reason codes:

Codes
Explanation
A,yy
An attempt was made to open an OSAM data set. The OSAM OPEN routine returned an error indication. yy is the hexadecimal error code that is returned in register 15.
Code (hex)
Meaning
00
The normal condition.
04
The DCB is already being opened or closed.
08
The DCB is already open.
0C
The DECBTYPE is invalid.
10

A failure in the IMS SVC occurred. DCBWRK1 indicates the reason.

z Value (hex)
Meaning
01
Internal error, Media Manager call failure.
02
Internal error, caller’s MMCLP invalid.
03
Internal error, DCB already open.
04
Internal error, not OSAM OPEN.
05
Already open as DUMMY.
06
DCB had earlier problem.
07
Internal error, caller did not pass DD name.
08

Internal error; caller passed zero for an MMP address.

Programmer response: Call IBM Software Support.

14
An I/O error occurred while the OSAM OPEN routine was scanning for a file mark, formatting, or writing a file mark. See DECBSTAT for additional information.
18
An invalid RBN was calculated. The RBN is either 0 or is greater than the maximum RBN for the data set.
1C
An error occurred during TCLOSE processing for the data set. DCBWRK1 indicates the reason.
20
An error occurred while acquiring storage that uses IMODULE.
24
An error occurred during EOV processing for the data set.
28
OSAMOP IOSCB=NO was specified in a control statement data set. This value caused BATCH initialization to bypass the allocation of OSAM I/O blocks and prevented the use of the OSAM access method.
z is the hexadecimal error subcode returned at the last byte (byte number 4) in the field name DCBWRK1 by module DFSAOSF0. This subfield of the message is used only for a message that contains reason code A,10.
z Value (hex)
Meaning
01
The DD statement is missing, or for dynamically allocated data sets, the data set is not yet allocated.
02
The data set is a concatenated data set.
03
Fewer units than volumes were specified for a DASD data set.
04
JCL specified a DSORG type not permitted by OSAM.
05
The DSCB for the data set was not found.
06
First volume DSCB specified a DSORG type not permitted by OSAM.
07
DCB block size not equal to DSCB block size after Job File Control Block/DCB merge.
08
DCB LRECL size not equal to DSCB LRECL size after Job File Control Block or Data Control Block (DCB) merge.
09
Neither the LRECL nor block size was specified in the DSCB, DCB, or JCL.
0A
The specified block size is less than LRECL.
0B
The specified block size exceeds the track size for the specified device.
0C
A previous OPEN or EOV failed.
0D
VIO not supported by OSAM. The data set is allocated to a VIO unit.
0E
Tape devices are not supported. The data set is allocated to a tape device.
0F
An internal error occurred in the OSAM DEB subroutine. DCBWRK1 indicates the error code:
01
The block size is greater than the track size.
02
The DEB length is greater than the maximum allowed. There are too many extents. This situation might be the result of a DFS0842I message REASON=5 issued earlier by the same or a different job.
10
IEFDDSRV failed to perform the function.
11
Inconsistent number of allocated devices.
12
The reread of the job file control block (JFCB) failed.
13
User description area (UDA) SSI interface error.
14
DCM is already open as a DD dummy.
15
This is not OSAM open calling.
16
DCB is already open by MVS.
17
Invalid parameter.
18
Error reading the job file control block (JFCB).
19
Open failure with no abend.
1A
Error obtaining DSCB on the first volume of the OSAM data set.
1B
Error constructing extends for all of the volumes of the OSAM data set. Return code from OSAMDEB subroutine is 8 in register 15.
1C
Error locating or loading the OSAM I/O routines.
1D
Error releasing a captured UCB.
1E
Bad conversion from the current volume DSCB TTR to the disk address MCCHHR.
99
The DCB abend exit was entered. Message DFS0695I is also displayed. See that message for an explanation of the error.

Programmer response: Correct the JCL error by using the major and minor reason codes given.

B,10
The IDAXVIM FUNC=CALLXVI call to invalidate the buffer received a non- zero return code (RC). The major RC is X'04' and the minor RC is X'10'. This means the call was illegal , and it failed to release ownership.
xx
Return code from IDAXVIM.
08
No room in the user's AREA.
12
VSAM structure error.

Operator response: No action is required.

System programmer response: Save the diagnostic information. Contact IBM Software Support for assistance.

B,40
A coupling facility (CF) environmental error occurred.

Programmer response: Determine the exact error by using the IMS DFSERA10 utility and selecting the X'67FD' record from the IMS log. This record includes the REQUEST=IXLCACHE macro with a reason code, RSNC=xxxxxxxx. The last 4 digits of the number string xxxxxxxx represent the true error code. For example, if the reason code is RSNC=0C170C19, look up reason code 0C19. See the z/OS® MVS Programming: Sysplex Services Reference for reason code descriptions.

B,yy
DL/I OPEN/CLOSE called the DL/I buffer handler for buffering services. The buffer handler returned with an error indicator. yy is the hexadecimal value that was returned in PSTRTCDE by the buffer handler.

Programmer response: For information on buffer handler return codes, see the IMS return and function codes information.

C,yy
An error was detected by VSAM CLOSE. yy is the hexadecimal error field from the VSAM ACB.

Programmer response: See an explanation of VSAM CLOSE error codes.

E,yy
DL/I OPEN/CLOSE issued a VSAM ERASE macro and encountered an error condition returned from VSAM. If a physical (I/O) error occurred, message DFS0731I or DFS0451I was issued indicating the nature of the error, and yy is the hexadecimal value returned by VSAM in register 15; otherwise, yy is the hexadecimal logical error code returned by VSAM.

Programmer response: See an explanation of VSAM logical and physical error return codes.

G,yy
DL/I OPEN/CLOSE issued a VSAM GET macro and encountered an error condition returned from VSAM. If a physical (I/O) error occurred, message DFS0731I or DFS0451I was issued indicating the nature of the error, and yy is the hexadecimal value returned by VSAM in register 15; otherwise, yy is the hexadecimal logical error code returned by VSAM.

Programmer response: See an explanation of VSAM logical and physical error return codes.

I,01
The relative key position from the DBD is not the same as the relative key position that was defined to VSAM.

Programmer response: Correct the relative key position specified to VSAM. The correct relative key position to be defined for VSAM is provided in the output listing from DBD generation.

I,02
The key length from the DBD is not the same as the key length that was defined to VSAM.

Programmer response: Correct the key length specified to VSAM. The correct key length to be defined for VSAM is provided in the output listing from DBD generation.

I,03
The record size or block size for OSAM database partitions for the data set being opened is not large enough to contain the longest segment in the database plus the IMS overhead required.

Programmer response: Correct the record size specified to VSAM. For OSAM database partitions, correct the block size. The correct record size to define for VSAM is provided in the output listing from DBD generation.

I,04
The record size for the HD VSAM ESDS being opened was not defined to VSAM as 7 bytes less than the CI size. The record size for an HD VSAM ESDS data set must be 7 bytes less than the CI size.

Programmer response: Redefine the VSAM data set so that record size is 7 bytes less than the CI size.

I,05
The record size of an HS VSAM KSDS or ESDS being opened for load is not a multiple of two. The record size for VSAM HS data sets must be an even number.

Programmer response: Correct the record size specified to VSAM.

I,06
Upon opening an HSAM VSAM data set, the block size was found to be less than the LRECL. The block size must be equal to or greater than the LRECL.

Programmer response: Correct the block size specified to VSAM.

I,07
An HS VSAM database is defined with the ESDS record size shorter than the KSDS record size.

Programmer response: Change the VSAM definition so that the ESDS record size is equal to or greater than the KSDS record size.

I,08
An attempt was made to open a VSAM data set for which there was no DD statement, or for dynamically allocated data sets, the data set is not yet allocated. The message indicates the ddname associated with the data set that was opened.

Programmer response: Check the JCL and DBD for the job to determine the DD statement requirements.

System operator response: Use an UPDATE DB START(ACCESS) or /START DB command to cause allocation retry.

I,09
An attempt was made to open a VSAM or OSAM DCB and the ddname was already in the open table. This indicates that the data set is currently opened under a data management block and an attempt was made to open it under a second data management block, which was caused by having two DBDs referring to the same ddname. Two DBDs cannot reference the same ddname.

Programmer response: Find the two DBDs that reference the same ddname and delete one. Change the PSB to reference the correct DBD; then run the PSB generation utility.

I,10
An attempt was made to open a VSAM ACB and the ddname was already in the open table. This indicates that the data set is currently open under a data management block and an attempt was made to open it under a second data management block, which was caused by having two DBDs referring to the same ddname. Two DBDs cannot reference the same ddname.

Programmer response: Find the two DBDs that reference the same ddname and eliminate one. Change the PSB to reference the correct DBD, and then run the PSB generation utility.

I,11
An attempt was made to open an ISAM DCB or an OSAM DCB associated with an ISAM DCB. IMS does not support combinations that include ISAM.

This code can also be issued during load processing for an HSAM database, because the current DCB is missing a DCBE.

Programmer response: Convert HISAM or the index database of a HIDAM structure to the VSAM organization, which is supported.

I,12
An attempt was made to open a VSAM ACB in the specified VSAM shared resource pool. No subpool within the shared resource pool was large enough. IMS tries to open the VSAM ACB again, using the default VSAM shared resource pool.

Programmer response: Check the VSRBF subpool definition statements for the VSAM shared resource pool for this data set. Define subpool buffer sizes big enough for this data set and for the KSDS index.

I,13
The system was unable to satisfy a GETMAIN request for an additional ddname open table. This error occurred during the opening of a DCB.

Programmer response: Provide a larger address space for this step.

I,14
The system was unable to satisfy a GETMAIN request for an additional ddname open table. This error occurred during the opening of an ACB.

Programmer response: Provide a larger address space for this step.

I,15
An error was detected during OPEN processing of an HSAM or OSAM data set. The data set was not allocated at the time IMS tried to obtain DBRC authorization for the database. See return code I,16 for a complete description of the error.

Programmer response: If there is an incorrect dynamic allocation of the data set, or an incompatible allocation program or product, use the /DBR command to unallocate the database. Correct the dynamic allocation specification, or the program or product, and then enter an UPDATE DB START(ACCESS) or /START for the database.

I,16
An error was detected during OPEN processing of a VSAM data set. The data set was not allocated at the time IMS tried to obtain DBRC authorization for the database. Later, when the data set was opened, it was allocated. This can happen for one of the following reasons:
  • The dynamic allocation specifications for the data set are incorrect. The DFSMDA TYPE=DATASET statement for the data set was included within the DFSMDA TYPE=DATABASE statement for a different database. For example, the DFSMDA TYPE=DATASET statement for the index of a HIDAM database is included within the DFSMDA TYPE=DATABASE statement for the data part of the HIDAM database.
  • The dynamic allocation specifications for the data set are incorrect. Preceding message DFS2499W indicates an invalid allocate request for the database. For example, the MDA member for the database specifies two data sets. The JCL includes DD statements for one of the data sets, but not all of the data sets included in the MDA member.
  • The allocation was performed by an incompatible allocation program or product, which allocated the database after the authorization for the database, but before the open of the database.
Programmer response: If the error was caused by incorrect dynamic allocation of the data set:
  1. Enter a /DBR command to deallocate the database.
  2. Correct the dynamic allocation specification.
  3. Enter an UPDATE DB START(ACCESS) or /START for the database.
If the error was caused by an incompatible allocation program or product:
  1. Enter a /DBR command to deallocate the database.
  2. Correct the program or product.
  3. Enter an UPDATE DB START(ACCESS) or /START for the database.
I,20
The system is not able to satisfy a GETMAIN request for the record size of the KSDS being opened for sequential mode.

Programmer response: Provide a larger address space for this step.

I,21
The system is not able to satisfy the GETMAIN request for the block size of an HSAM database.

Programmer response: Provide a larger address space for this step.

I,22
The system is not able to satisfy a GETMAIN request for the control interval size to use to write the first CI of the ESDS data set being opened for load processing.

Programmer response: Provide a larger address space for this step.

I,23
The system is not able to satisfy a GETMAIN request for the record size of the ESDS data set being opened. The area is used to format the current CA when the end RBA for the data set is not on a CA boundary.

Programmer response: Provide a larger address space for this step.

I,25
The system is not able to satisfy a GETMAIN request for the record size of KSDS to be used for a temporary work buffer.

Programmer response: Provide a larger address space for this step.

I,26
The system is not able to satisfy a GETMAIN request for an area to contain the ddnames of all the data sets contained in the database. A temporary work area to build the list of ddnames is required during open-for-update processing of a database that is registered to DBRC.

Programmer response: Provide a larger address space for this step.

I,30
An attempt was made to open a VSAM data set associated with a PCB that has processing option L and the data set is not empty.

Programmer response: If the old data set is to be scratched, delete it using the VSAM AMS program. If the data set is not to be scratched, use a PCB with processing option other than L.

I, 31
An attempt was made to open a VSAM data set associated with a PCB, which has a processing option other than L, and the data set is empty.
Programmer response: Use a PCB with processing option L to perform the initial loading of a database. When developing the JCL, use the following procedure:
  1. Delete or define KSDS data set.
  2. Run a DFSPRECO job to rebuild the indirect list entry (ILE) and the Primary Index data set.
Note: If you cancel the job while in 2, rerun the entire job starting from 1. Do not restart in 2.
I,32
During an attempt to open a VSAM KSDS data set, it was determined that the total length of the index VSI plus the data VSI plus the size of the IMS NCB was greater than decimal 255 (including the length field). This value is passed to IRLM during a notify as the length of the message area, and must be less than decimal 256 (including the length field) due to an IRLM restriction.

Programmer response: Check the define cluster for key ranges. Each key range increases the size of the index VSI by decimal 32 bytes. IMS does not use or support VSAM key ranges.

I,33
DL/I open processing determined that shared access is allowed for the data set but the SHR options specified on the Access Method Services DEFINE are not appropriate for data sharing. Message DFS050A was issued. For further description of the failure, see message DFS050A.

Programmer response: See message DFS050A.

I,34
During an attempt to open a VSAM KSDS data set, either the index component or the data component was not opened.

Programmer response: Verify that the data set name specified for the DD statement being opened is the data set name for the VSAM cluster, rather than the data set name of one of the components of the cluster.

I,35
During open-for-update processing of the database, it was determined that not all the data sets contained in the database are registered to DBRC. Message DFS0484A was issued listing the data sets that are not registered.

Programmer response: See message DFS0484A.

I,36
During an attempt to open a VSAM KSDS data set, it was determined that the KSDS is an SMS data set with the EXTENDED ADDRESSABILITY attribute, which IMS does not support. If the data set is defined in JCL as DD DUMMY, the test for Extended Addressability cannot be completed and will cause this subcode.

Programmer response: The data set was allocated using a data class that specified EXTENDED ADDRESSABILITY, which is not allowed for data sets that IMS uses. The data set must be allocated with a data class that does not specify EXTENDED ADDRESSABILITY.

In the case of DD DUMMY, correct the data set name or remove it as appropriate, and then run the job again to allow Extended Addressability checking to proceed.

I,37
During an attempt to open a VSAM ESDS data set, it was determined that the ESDS is an SMS data set with the EXTENDED ADDRESSABILITY attribute, which IMS does not support. If the data set is defined in JCL as DD DUMMY, the test for Extended Addressability cannot be completed and will cause this subcode.

Programmer response: The data set was allocated using a data class that specified EXTENDED ADDRESSABILITY, which is not allowed for data sets that IMS uses. The data set must be allocated with a data class that does not specify EXTENDED ADDRESSABILITY.

In the case of DD DUMMY, correct the data set name or remove it as appropriate, and then run the job again to allow Extended Addressability checking to proceed.

I,38
During an attempt to open a VSAM data set, it was determined that the data set is an SMS extended format data set with the COMPACTION attribute, which IMS does not support.

Programmer response: The data set was allocated by using a data class that specified the COMPACTION attribute, which is not allowed for data sets that IMS uses. The data set must be allocated with a data class that does not specify COMPACTION.

I,47

During an attempt to open a VSAM data set, it was determined that the data set was cached by Hiperbatch. IMS does not support Hiperbatch.

Programmer response: A data set must have a RACF DLFCLASS profile for it to be eligible to be cached by Hiperbatch. Remove the data set from the DLFCLASS or use a different data set name.

I,50
One of the following errors occurred:
  • No VSAM buffer subpool has buffers large enough to contain the control intervals associated with the data set being opened.
  • A DFSVSAMP DD statement is missing.
  • No OSAM buffer pool has buffers large enough to contain the associated blocks.

Programmer response: Rerun the step, but this time specify a buffer subpool large enough to contain the control interval blocks.

I,51
IMS retains the RBA of the last used record in an ESDS in the first CI of that data set. During DL/I OPEN, it was found that this RBA did not fall in the last CI of the data set.
I,52
The IMODULE facility of IMS failed while loading or deleting the randomizing routine, the Secondary Index Database Maintenance exit routine, or the Segment edit/compression exit routines.

Programmer response: Message DFS0733I was issued indicating the cause of the failure. See message DFS0733I.

I,53
An HSAM data set failed to open.

Programmer response: See the explanation for the AI status code in DL/I status code information for possible reasons for the failure.

I,54
An HSAM data set failed to open.

Programmer response: See the explanation for the AI status code in DL/I status code information for possible reasons for the failure.

Save a VTOC listing of the volume in question for problem determination.

I,55
An attempt was made to open a data set that previously failed during VERIFY. The data set could not be opened or closed.
I,56
An attempt was made to OPEN an HSAM database. The DCB BLKSIZE for the data set was not provided by either the JCL or the label on the volume; as a result, the block size is 0.

Programmer response: Ensure that the JCL for the job is correct and that the database is loaded.

Save a VTOC listing of the volume in question for problem determination.

I,57,Z
After the VSAM open and verify was done for a HISAM or non-unique secondary index ESDS data set, the end of the data set was adjusted because Extended Error Queue Element blocks (EEQEs) were present. VSAM SVC 109 was issued to inform VSAM so that VSAM could adjust the VSI information. The SVC returned a nonzero return code in register 15. Subcode Z in the message is the hexadecimal error subcode returned in register 15.
Codes
Explanation
I,58
An initialization error was detected by a Segment Edit/Compression exit routine.

Programmer response: Message DFS0749Iwas issued indicating the cause of the failure. See message DFS0749I.

Codes
Explanation
I,60
A VSAM data set has a CI size which exceeds the maximum CI size supported by DL/I which is 30720.

Programmer response: Redo the AMS define using a CI size equal to or less than 30720.

I,61
During an attempt to open a VSAM or OSAM data set, a lock could not be acquired.

To determine the problem, see abend 3303.

I,62
The relative key position in the indirect list data set (ILDS) is not zero.

Programmer response: Define the relative key position as ZERO in the VSAM cluster definition for the indirect list data set (ILDS).

I,63
The record length in the indirect list data set (ILDS) is not correct.

Programmer response: Define the record length as 50 in the VSAM cluster definition for the indirect list data set (ILDS).

I,64
The key length in the indirect list data set (ILDS) is not correct.

Programmer response: Define the key length as 9 in the VSAM cluster definition for the indirect list data set (ILDS).

I,65
The partition ID within the data set does not match the partition ID being opened.

Programmer response: Correct the name of the data set so that it matches the partition ID.

I,66
An ACBGEN of the PSB has not been performed since the database was changed to Partitioned.

Programmer response: Perform the appropriate ACBGEN. STATUSAI is returned to the application; use this to look up which PSB the application is using and which ACB that PSB is generated in. You can also look at the job's JCL to determine which ACB library it's running against.

I,67
Free space has been defined on a data cluster of an ESDS database. An ESDS database is not allowed to have free space defined.

Programmer response: Remove the free space from the data cluster definition.

I,68
An error was detected during initial OLR processing when the first CI of a VSAM output data set was being formatted.

Programmer response: Scratch and reallocate the output data set.

I,70
An invalid index has been defined on an INDICES parameter of a SENSEG statement of a PCB during PSB generation.

Programmer response: Correct the INDEX name specified on the INDICES parameter of the SENSEG statement of the PCB in question.

I,71

An error was detected during close processing of an OSAM data set. An I/O error was encountered. Subcode z in the message is the hexadecimal error subcode returned at the last byte (byte number 4) in the field name DCBWRK1 by module DFSAOSF0.

For OSAM using linear data sets, subcodes from DFSAOSFM have a different meaning. See the set of subcodes for the Z value for OSAM using linear data sets.

Z value(hex)
Meaning
01
An error occurred while processing closing volume extents. Return code from OSPLIT subroutine is 4 in register 15.
02
An error occurred while converting OSAM Data Extension Block (DEB) to MVS DEB. Return code from OSDEB subroutine is 4 in register 15.
03
DCB is already closing.
04
DEB/DCB validation check failed.
05
An error occurred while processing closing volume extents. Return code from OSPLIT subroutine is 8 in register 15.
06
An error occurred while converting OSAM Data Extension Block (DEB) to MVS DEB. Return code from OSDEB subroutine is 8 in register 15.
07
Error releasing DCB extension area.
99
The DCB abend exit was entered. Message DFS0695I is also displayed. See that message for an explanation of the error.

Programmer response: Check the messages that preceded the I/O error, likely DFS0762I and DFS0451I. Correct the failure.

I,72
An error was detected during close processing of an OSAM data set. An I/O error was encountered.

Programmer response: Check the messages that preceded the I/O error, likely DFS0762I and DFS0451I. Then, correct the failure.

O,yy
VSAM OPEN detected an error. yy is the hexadecimal error field from the VSAM ACB.

Programmer response: If yy is DC and the database is organized as VSAM KSDS, run the LISTCAT command to get a report from the VSAM catalog. Review the CISIZE of the index component data set with the installation buffer pools defined in the DFSVSAMP data set for batch jobs, or in the DFSVSMxx member for online system. Verify that the CI specified in the installation is at least as large as the CISIZE from the LISTCAT.

See an explanation of VSAM OPEN error codes.

P,yy
DL/I OPEN/CLOSE issued a VSAM PUT macro and encountered an error condition returned from VSAM. If a physical (I/O) error occurred, message DFS0731I or DFS0451I was issued indicating the nature of the error, and yy is the hexadecimal value returned by VSAM in register 15; otherwise, yy is the hexadecimal logical error code returned by VSAM.

Programmer response: See an explanation of VSAM logical and physical error return codes.

R,01
The database, dbdname, could not be opened because the installation's security product did not allow IMS to access the VSAM data set for ddname at the required level. The specific cause or the error is described in the message DFS0735I-R01 for the dbdname and ddname.

Programmer response: See message DFS0735I for problem determination.

R,02
The database, dbdname, could not be opened because IMS was unable to access the data set association block (DSAB) for ddname. The specific cause or the error is described in the message DFS0735I-R02 for the dbdname and ddname.

Programmer response: See message DFS0735I for problem determination.

R,03
The database, dbdname, could not be opened because DFP Catalog Management encountered an error accessing the catalog for the VSAM data set. The specific cause or the error is described in the message DFS0735I-R03 for the dbdname and ddname.

Programmer response: See message DFS0735I for problem determination.

S,yy
DL/I OPEN/CLOSE issued a VSAM SHOWCB macro and was returned a nonzero return code indicating an error condition. yy is the hexadecimal value returned by VSAM in register 0 indicating the nature of the error.

Programmer response: See an explanation of VSAM logical and physical error return codes.

V,yy
DL/I OPEN/CLOSE issued a VSAM VERIFY macro and encountered an error condition returned from VSAM. If a physical (I/O) error occurred, message DFS0731I or DFS0451I was issued indicating the nature of the error, and yy is the hexadecimal value returned by VSAM in register 15; otherwise, yy is the hexadecimal logical error code returned by VSAM.

Programmer response: See an explanation of VSAM logical and physical error return codes.

System action

IMS issues the error message.

Processing of the DL/I call is terminated and a status code of AI is returned in the PCB. In addition, the ddname from the message is stored in the segment name.

Operator response

Contact your system programmer for assistance.

Problem determination

1, 3, 8, 17b, 17d, 18, 20, 36

Module

DFSDLOC0