IBM Support

LI73822: Tablespace file corruption during backup/restore or connect to db with automatic storage.

Subscribe

You can track all active APARs for this component.

 

APAR status

  • Closed as program error.

Error description

  • <scenario #1>
    After restoring the database from backup, rollforward query
    status could fail with SQL0980 disk error and db2diag.log shows
    SQLB_CSUM "Bad Page, Checksum" error
    
    For example,
    
    db2 rollforward db PROD query status
    
    SQL0980C  A disk error occurred.  Subsequent SQL statements
    cannot be processed.  SQLSTATE=58005
    
    db2diag.log entry -
    
    2009-xx-xx-xx.xx.xx.xxxxxx-xxx xxxxxxxxxxxx       LEVEL: Error
    PID     : xxxxxx               TID  : 1           PROC :
    db2agent (PROD) 0
    INSTANCE: xxxxxxxx             NODE : 000         DB   : PROD
    APPHDL  : 0-473                APPID:
    *LOCAL.xxxxxxxx.xxxxxxxxxxxx
    FUNCTION: DB2 UDB, buffer pool services, sqlbReadPoolTable,
    probe:910
    RETCODE : ZRC=0x86020019=-2046689255=SQLB_CSUM "Bad Page,
    Checksum
    
    If restoring the same database backup the second time and issue
    the rollforward query status again, it will complete
    successfully.
    
    <scenario #2>
    If users changes permissions to /tmp readable only for instance
    owner, backup of database would fail with SQL2048 Error and
    corrupt SQLSPCS file. This would result in SQL0980C error while
    connecting to database and users will not be able to connect to
    database.
    
    Steps to recreate issue :
    ***********************************************************
    1. db2 "create database TEST"
    
    2. db2 connect to TEST
    
    3. As root ,CHANGE permissions ON /tmp [root@lenexa /]# chmod
    000 tmp
     d---------   26 root root         4096 Aug 27 11:40 tmp
    4. db2 backup db TEST
        SQL2048N  An error occurred while accessing object "1".
    Reason code: "6".
    
    5. db2 connect to TEST
        SQL0980C  A disk error occurred.  Subsequent SQL statements
    cannot be processed.  SQLSTATE=58005
    
    <scenario #3>
    This not only affects backup, but normal connect as well.  It is
    specific to automatic storage tablespace and temp tablespace.
    When you try to connect to an automatic storage database, db2
    will attempt to redefine the containers for any SMS tempspace
    (under certain conditions).  The problem is that when db2 tried
    to free the containers, "cont_mem_used" field in SQLSPCS files
    will be modified unconditionally even if the freeing of the
    container may fail.  This could result in cont_mem_used = 0 and
    checksum not recaculated. You will see following messages in
    db2diag.log.
    
    xxxx-xx-xx-xx.xx.xx.xxxxxx+xxx I9084G474          LEVEL: Error
    PID     : 18390                TID  : 3086894784  PROC :
    db2agent (SAMPLE) 0
    INSTANCE: xxxxxx               NODE : 000
    APPHDL  : 0-7                  APPID: *LOCAL.xxxxxxx.xxxxxxxxx
    AUTHID  : xxxxxx
    FUNCTION: DB2 UDB, buffer pool services, sqlbReadPoolOneFile,
    probe:955
    MESSAGE : ZRC=0x86020019=-2046689255=SQLB_CSUM "Bad Page,
    Checksum Error"
              DIA8426C A invalid page checksum was found for page
    "".
    
    xxxx-xx-xx-xx.xx.xx.xxxxxx+xxx I9084G474          LEVEL: Error
    PID     : 18390                TID  : 3086894784  PROC :
    db2agent (SAMPLE) 0
    INSTANCE: xxxxxx               NODE : 000
    APPHDL  : 0-7                  APPID: *LOCAL.xxxxxxx.xxxxxxxxx
    AUTHID  : xxxxxx
    FUNCTION: DB2 UDB, buffer pool services, sqlbReadPool, probe:920
    MESSAGE : ZRC=0x86020019=-2046689255=SQLB_CSUM "Bad Page,
    Checksum Error"
              DIA8426C A invalid page checksum was found for page
    "".
    DATA #1 : <preformatted>
    An error was encounterd while reading pool 1from offset 262144
    in both tablespace files.
    

Local fix

  • <for scenario #1>
    The workaround is to restore the database again and rollforward
    the second time.
    
    <for scenario #2 and #3>
    Contact DB2 technical support for patching the corrupted SQLSPCS
    files.
    

Problem summary

  • Users Affected: All
    

Problem conclusion

  • First fixed in DB2 UDB Version 9.1 , FixPak 7
    

Temporary fix

Comments

APAR Information

  • APAR number

    LI73822

  • 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-10-06

  • Closed date

    2009-04-08

  • Last modified date

    2011-12-16

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

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

    LI73823 LI74528

Fix information

  • Fixed component name

    DB2 UDE ESE LIN

  • Fixed component ID

    5765F4104

Applicable component levels

  • R910 PSY

       UP

  • R950 PSY

       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:
15 October 2021