IBM Support

PM92590: DFS0842I OSAM DATA SET EXCEEDED MAX EXTENTS, REASON=5

A fix is available

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • A PDF OSAM data set for partition 2 had filled to 4.7GB of
    its 8GB size when message DFS0842I OSAM DATA SET CANNOT BE
    EXTENDED, REASON=5 was issued.  An attempted UNLOAD of the
    data set by a PDF utility failed with message NSX1690W OSAM
    DBD DBCOISLM in DD COISLM02 extents of 61 exceeded OSAM maximum
    allowable of 59, database unusable by IMS Diagnostics.
    
    A listing of the data set information showed:
    General Data                           Current Allocation
      Management class . . : IMSMAN    Allocated cylinders : 7,800
      Storage class  . . . : IMS       Allocated extents . : 61
       Volume serial . . . : IMS524 +
       Device type . . . . : 3390
      Data class . . . . . : DBOSAM
       Organization  . . . : PS       Current Utilization
       Record format . . . : FBS       Used cylinders  . . : 7,401
       Record length . . . : 2048      Used extents  . . . : 57
       Block size  . . . . : 2048
       1st extent cylinders: 400
       Secondary cylinders : 200
    Other messages received were:
    DFS0844I DFSGGSP0 DBCOISLM DATASET FULL, DDNAME=COISLM02
    DFS0845I DBCOISLM DATASET LIMIT REACHED, DDNAME=COISLM02
    This was a multivolume OSAM data set that was contained on
    11 volumes with the following allocated extents:
    VOLUME       EXTENTS            BLOCKS      CYLS     ACCUM
    ------     ----------------     -------     ----     -----
      1         8 (1 pri,7 sec)     567,000     1800     1800
      2         2 (sec)             126,000      400     2200
      3         6 (sec)             126,000      400     2600
      4        11 (sec)             315,000     1000     3600
      5         2 (sec)             126,000      400     4000
      6        11 (sec)             378,000     1200     5200
      7        11 (sec)             504,000     1600     6800
      8         3 (sec)              63,000      200     7000
      9         1 (sec)              63,000      200     7200
     10         5 (sec)             126,000      400     7600
     11         1 (sec)              63,000      200     7800
    ---------------------------------------------------------
      TOTALS   61 extents         2,457,000 blocks       7800 cyls
    DFS730I UNABLE TO OPEN DATASET WITH DDNAME xxxxxxxx FOR REASON
    A,10,0F can also be issued for this error when the maximum
    number of OSAM extents are exceeded.
    

Local fix

Problem summary

  • ****************************************************************
    * USERS AFFECTED: All IMS V12 full function OSAM               *
    *                 (Overflow Sequential Access Method)          *
    *                 users.                                       *
    ****************************************************************
    * PROBLEM DESCRIPTION: DFS0842I OSAM DATASET CANNOT BE         *
    *                      EXTENDED, REASON=5,24, DDNAME=xxxxxxxx  *
    *                      message encountered while running       *
    *                      applications using OSAM databases.      *
    ****************************************************************
    * RECOMMENDATION: INSTALL CORRECTIVE SERVICE FOR APAR/PTF      *
    ****************************************************************
    MSGDFS0842I was issued while inserting to an OSAM database
    resided on multiple volumes.  The application was performing
    lots of inserts to a database.  The database data set was
    allocated across fifty seven extents.  After more inserts, an
    "end of volume" (EOV) request was issued for more space.  This
    request was satisfied using four fragments, increasing the total
    number of extents to sixty one.  This is one more than the sixty
    allowed under OSAM, and led to the error message.  The reason
    that EOV exceeded the OSAM extent limit is that if EOV cannot
    satisfy a request with one contiguous extent, EOV will try to
    satisfy the request with up to five smaller extents.  In the
    error case, EOV returned four extents under one request.  OSAM
    needs to be modified to better handle EOV requests when a
    database is within five extents of it's maximum allocation.
    Other messages received were:
      DFS0844I DFSGGSP0 DBCOISLM DATASET FULL, DDNAME=xxxxxxxx
      DFS0845I DBCOISLM DATASET LIMIT REACHED, DDNAME=xxxxxxxx.
    

Problem conclusion

  • GEN:
    KEYWORDS:
    
    *** END IMS KEYWORDS ***
    The following parts have been modified to address the problem:
    
    DFSAOSF0
     This module processes the EOV function.  After the extension
     request is successful, it checks the total number of extents
     allocated so far, and if the number is 55 or more flag DCBEXT55
     is set with subcode 10 in DCBWRK0+3 and passes the information
     back to the caller, DFSDBH10, to issue a warning message
     about the extents nearing the maximum allowed so the users
     can perform some actions to avoid the error.
    
    DFSDBH10
      After macro DFSOSAM FUNC=EOV with good return code, if
      flag DCBEXT55 is set call DFSDBH40 to issue DFS0842I message.
    
    DFSDBH40
      Issue DFS0842I message.
    
    IDCBOSD
      Add flag DCBEXT55 under DCBFLG1.
      Add field DCBWRK0 using the reserved storage.
    
    Doc change:
    
    GC18971206  Messages and Codes
    
    
    Replace the following message text:
    
    DFS0842I
    
    OSAM DATASET CANNOT BE EXTENDED, REASON=X, Z,dbdname
    ddname, dsname
    
    With the following:
    
    DFS0842I
    
    OSAM DATASET CANNOT BE EXTENDED, REASON=X, Z,dbdname
    ddname, dsname
    
    or
    
    OSAM DATA SET NEAR MAX EXTENTS (NN OF 60), RSN=X, Z,
    dbdname
    ddname, dsname
    
    Replace the following part:
    
    Explanation
    OSAM was unable to extend the named data set.  A two line
    message, each numbered DFS0842I is issued.  The first line
    indicates why the data set is not extendable and also contains
    the dbdname.  The second line contains the ddname and the
    dsname.
    
    With the following:
    
    Explanation
    OSAM was unable to extend the named data set or the total number
    of extents allocated for the data set are 55 or more nearing the
    maximum allowance of 60.  A two line message, each numbered
    DFS0842I is issued.  The first line indicates why the data set
    is not extendable or the total extents allocated so far.  It
    also contains the dbdname.  The second line contains the ddname
    and the dsname.
    
    Replace the following part:
    
    5
    LCREAT30 An attempt to get another extent for the data set using
    the OSAM end-of-volume routine failed.  The data set could not
    be enlarged and another extension could not be allocated.
    
    With the following:
    
    5
    LCREAT30 An attempt to get another extent for the data set using
    the OSAM end-of-volume routine and results in one of the
    following two conditions:
    
      1. The end-of-volume routine failed.  The data set could
         not be enlarged and another extension could not be
         allocated.
    
      2. The end-of-volume routine was successful, but the total
         number of extents used are 55 or more nearing the allowable
         maximum of 60.
    
    Add the following bullet between the existing second and the
    third bullet under:
    
    Programmer response
    Take the following actions:
    
      . If the total number of extents for a data set are nearing 60
        add additional space or reduce the number of DASD extents,
        by reorganizing the database.
    
    Replace the following part:
    
    Z subcode (hex)
        Meaning
    01
        Data control block (DCB) marked unusable.
    02
        DCB is DD dummy data set. It is detected by DFSAOSF0.
    03
        DCB is not open. It is detected by DFSAOSF0.
    04
        Data extension block (DEB) has reached maximum size.
    05
        Data set not extendable, or secondary allocation is not
        permitted.
    06
        Insufficient volumes.
    07
        An error occurred while locating the current volumes
        extents. The OSPLIT subroutine is 4 in register 15.
    08
        An error occurred while converting an OSAM data extension
        block (DEB) to an MVS DEB. The return code from the OSDEB
        subroutine is 4 in register 15.
    09
        An error occurred while constructing an OSAM DEB. The return
        code from the OSAMDEB subroutine is 4 in register 15.
    0A
        DEB/DCB validation check failed.
    0B
        This call is not for an EOV call request.
    0C
        An error occurred while locating the current volumes
        extensions. The return code from the OSPLIT subroutine is 8
        in register 15.
    0D
        An error occurred while converting an OSAM data extension
        block (DEB) to an MVS DEB. The return code from the OSDEB
        subroutine is 8 in register 15.
    0E
        An error occurred while constructing an OSAM DEB. The return
        code from the OSAMDEB subroutine is 8 in register 15.
    0F
        Error releasing a captured unit control block (UCB).
    
    With the following:
    
    Z subcode (hex) - set by module DFSAOSF0:
    
      Meaning
    
    01
        Data control block (DCB) marked unusable.
    02
        DCB is DD dummy data set.
    03
        DCB is not open.
    04
        Data extension block (DEB) has reached maximum size.
    05
        Data set not extendable, or secondary allocation is not
        permitted.
    06
        Insufficient volumes.
    07
        An error occurred while locating the current volumes
        extents. The OSPLIT subroutine is 4 in register 15.
    08
        An error occurred while converting an OSAM data extension
        block (DEB) to an MVS DEB. The return code from the OSDEB
        subroutine is 4 in register 15.
    09
        An error occurred while constructing an OSAM DEB. The return
        code from the OSAMDEB subroutine is 4 in register 15.
    0A
        DEB/DCB validation check failed.
    0B
        This call is not for an EOV call request.
    0C
        An error occurred while locating the current volumes
        extensions. The return code from the OSPLIT subroutine is 8
        in register 15.
    0D
        An error occurred while converting an OSAM data extension
        block (DEB) to an MVS DEB. The return code from the OSDEB
        subroutine is 8 in register 15.
    0E
        An error occurred while constructing an OSAM DEB. The return
        code from the OSAMDEB subroutine is 8 in register 15.
    0F
        Error releasing a captured unit control block (UCB).
    
    10
        The total number of extents allocated is 55 or more nearing
        the maximum allowance of 60 after a successful EOV function.
    
    Replace the following part:
    
     20
         End-of-volume (EOV) is already pending.
     21
         I/O error was encountered
     22
         DCB was DD dummy data set. It was detected by DFSAOS10.
     23
         DCB was not open. It was detected by DFSAOS10.
     24
         Error acquiring new extent.
    
    With the following:
    
    Z subcode (hex) - set by module DFSAOS10:
    
      Meaning
    
    20
        End-of-volume (EOV) is already pending.
    21
        I/O error was encountered
    22
        DCB was DD dummy data set. It was detected by DFSAOS10.
    23
        DCB was not open. It was detected by DFSAOS10.
    24
        Error acquiring new extent.
    

Temporary fix

Comments

APAR Information

  • APAR number

    PM92590

  • Reported component name

    IMS V12

  • Reported component ID

    5635A0300

  • Reported release

    200

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt / Xsystem

  • Submitted date

    2013-07-09

  • Closed date

    2013-08-27

  • Last modified date

    2013-10-04

  • APAR is sysrouted FROM one or more of the following:

    PM80208

  • APAR is sysrouted TO one or more of the following:

    UK97062

Modules/Macros

  • DFSAOSF0 DFSDBH10 DFSDBH40 IDCBOSD
    

Publications Referenced
GC18971206    

Fix information

  • Fixed component name

    IMS V12

  • Fixed component ID

    5635A0300

Applicable component levels

  • R200 PSY UK97062

       UP13/09/05 P F309

Fix is available

  • Select the PTF appropriate for your component level. You will be required to sign in. Distribution on physical media is not available in all countries.

[{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG19M","label":"APARs - z\/OS environment"},"Platform":[{"code":"PF054","label":"z Systems"}],"Line of Business":{"code":"","label":""}}]

Document Information

Modified date:
14 December 2020