IBM Support

LI72972: DB2PGCLNR WILL LEAK QUEUE OF AIO.

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • db2pgclnr will open queue using io_queue_init when open file.
    However db2pgclnr does not remove queue while db2pgclnr has
    gone.
    
    Therefore AIO queue will be increased, if AIO queue exceed
    aio_max_nr, io_queue_init will return EAGAIN.
    
    EAGAIN will occur when aio_nr > aio_max_nr.
    
    You will see the following entries in the db2diag.log -
    
    Example #1.
    
    2007-12-17-23.26.11.572841+540 E30653G310         LEVEL: Error
    (OS)
    PID     : 23641                TID  : 3086718656  PROC :
    db2pclnr 0
    INSTANCE: db2inst1             NODE : 000
    FUNCTION: DB2 UDB, oper system services, sqloLioInit, probe:10
    CALLED  : OS, -, io_queue_init                    OSERR: EAGAIN
    (11)
    
    Example #2.
    
    2008-01-15-16.57.29.648155-300 E21126607E572 LEVEL: Error (OS)
    PID : 17137 TID : 183046031712PROC : db2pclnr 9
    INSTANCE: db2inst1 NODE : 009
    FUNCTION: DB2 UDB, oper system services,
    sqloLinuxDoesFHSupportAIO,
    probe:10
    CALLED : OS, -, io_queue_init OSERR: EAGAIN (11)
    DATA #1 : File handle, PD_TYPE_SQO_FILE_HDL, 8 bytes
    0x0000007FBFFFC288 : 8828 F8A0 2A00 0000 .(..*...
    DATA #2 : unsigned integer, 4 bytes
    1
    DATA #3 : unsigned integer, 8 bytes
    65536
    DATA #4 : unsigned integer, 8 bytes
    65536
    

Local fix

  • Unset DB2LINUXAIO and bounce DB2.
    ie) db2set DB2LINUXAIO=
        db2stop
        db2start
    

Problem summary

  • db2pgclnr will open queue using io_queue_init when open file.
    However db2pgclnr does not remove queue while db2pgclnr has
    gone.
    
    Therefore AIO queue will be increased, if AIO queue exceed
    aio_max_nr, io_queue_init will return EAGAIN.
    
    EAGAIN will occur when aio_nr > aio_max_nr.
    
    You will see the following entries in the db2diag.log -
    
    Example #1.
    
    2007-12-17-23.26.11.572841+540 E30653G310         LEVEL: Error
    (OS)
    PID     : 23641                TID  : 3086718656  PROC :
    db2pclnr 0
    INSTANCE: db2inst1             NODE : 000
    FUNCTION: DB2 UDB, oper system services, sqloLioInit, probe:10
    CALLED  : OS, -, io_queue_init                    OSERR: EAGAIN
    (11)
    
    Example #2.
    
    2008-01-15-16.57.29.648155-300 E21126607E572 LEVEL: Error (OS)
    PID : 17137 TID : 183046031712PROC : db2pclnr 9
    INSTANCE: db2inst1 NODE : 009
    FUNCTION: DB2 UDB, oper system services,
    sqloLinuxDoesFHSupportAIO,
    probe:10
    CALLED : OS, -, io_queue_init OSERR: EAGAIN (11)
    DATA #1 : File handle, PD_TYPE_SQO_FILE_HDL, 8 bytes
    0x0000007FBFFFC288 : 8828 F8A0 2A00 0000 .(..*...
    DATA #2 : unsigned integer, 4 bytes
    1
    DATA #3 : unsigned integer, 8 bytes
    65536
    DATA #4 : unsigned integer, 8 bytes
    65536
    

Problem conclusion

  • Problem was first fixed in DB2 UDB Version 9.1 FixPack 5
    

Temporary fix

Comments

APAR Information

  • APAR number

    LI72972

  • Reported component name

    DB2 UDE ESE LIN

  • Reported component ID

    5765F4104

  • Reported release

    910

  • Status

    CLOSED PER

  • PE

    NoPE

  • HIPER

    NoHIPER

  • Special Attention

    NoSpecatt

  • Submitted date

    2008-01-08

  • Closed date

    2008-06-23

  • Last modified date

    2008-06-23

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

    LI72961

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

Fix information

  • Fixed component name

    DB2 UDE ESE LIN

  • Fixed component ID

    5765F4104

Applicable component levels

  • R910 PSN

       UP

[{"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SSEPGG","label":"DB2 for Linux- UNIX and Windows"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"910","Line of Business":{"code":"LOB10","label":"Data and AI"}}]

Document Information

Modified date:
14 October 2021