Results 1 to 11 of 11
  1. #1
    Join Date
    Aug 2011
    Location
    Mumbai,India
    Posts
    49

    Unanswered: SQL0805N Package "NULLID.SYSLH203 0X5359534C564C3031" not found.

    Hi,

    I am getting below error when trying to run a broker from WAS.

    ERROR [main ] 2011-12-21 07:30:38,869 : DisableManager.getEnableUsersFromUserInfo : Exception 1 [IBM][CLI Driver][DB2/AIX64] SQL0805N Package "NULLID.SYSLH203 0X5359534C564C3031" was not found. SQLSTATE=51002

    db2 client version on WAS :
    DB21085I Instance "db2inst1" uses "32" bits and DB2 code release "SQL08010"
    with level identifier "01010106".
    Informational tokens are "DB2 v8.1.1.0", "s021023", "", and FixPak "0".
    Product is installed at "/usr/opt/db2_08_01"

    db2 version on DB Server
    DB21085I Instance "db2ins11" uses "64" bits and DB2 code release "SQL09055"
    with level identifier "06060107".
    Informational tokens are "DB2 v9.5.0.5", "s091123", "U829462", and Fix Pack
    "5".
    Product is installed at "/opt/IBM/db2/V9.5".


    I have checked and found that package is already there in database.

    $db2 "select pkgname,valid from syscat.packages" | grep -i syslh20
    SYSLH203 Y
    SYSLH204 Y
    SYSLH205 Y
    SYSLH200 Y
    SYSLH201 Y
    SYSLH202 Y


    I have attached code of getEnableUsersFromUserInfo for further reference.

    Request help.
    Attached Files Attached Files

  2. #2
    Join Date
    May 2003
    Location
    USA
    Posts
    5,737
    It looks like you have run out of cursor packages. This is caused by bad coding techniques, such as not closing transactions and not do commits often enough.

    But it is possible that you just need to apply the latest V8 client fixpack, or upgrade to the latest V9.5 client to match the server. The DB2 client code you are using is very old and since it is fixpack 0, has many bugs. DB2 clients are free and can be downloaded at the IBM site.
    M. A. Feldman
    IBM Certified DBA on DB2 for Linux, UNIX, and Windows
    IBM Certified DBA on DB2 for z/OS and OS/390

  3. #3
    Join Date
    Aug 2011
    Location
    Mumbai,India
    Posts
    49
    THanks...

    I think will go for client upgrade.. hope it will resolve the issue...

    Do i need to recatalog nodes and database after client upgradation??

  4. #4
    Join Date
    May 2003
    Location
    USA
    Posts
    5,737
    Quote Originally Posted by shore View Post
    THanks...

    I think will go for client upgrade.. hope it will resolve the issue...

    Do i need to recatalog nodes and database after client upgradation??
    I don't think you will have to recatalog nodes/databases.
    M. A. Feldman
    IBM Certified DBA on DB2 for Linux, UNIX, and Windows
    IBM Certified DBA on DB2 for z/OS and OS/390

  5. #5
    Join Date
    Aug 2011
    Location
    Mumbai,India
    Posts
    49
    Hi Marcus,

    BTW is it possible to find out whether our program is running out of cursor packages??

  6. #6
    Join Date
    May 2003
    Location
    USA
    Posts
    5,737
    It is most likely running out. You can add some more cursors by following directions in this link, but that is pretty much like giving more drugs to a drug addict. Eventually, you will run out again. The only real solution is to fix your code so that transactions are closed properly and that the application does frequent commits. There may be WAS setting that helps, but not sure.
    IBM SQL0805N error when performing a DML statement on database. - United States
    M. A. Feldman
    IBM Certified DBA on DB2 for Linux, UNIX, and Windows
    IBM Certified DBA on DB2 for z/OS and OS/390

  7. #7
    Join Date
    Aug 2011
    Location
    Mumbai,India
    Posts
    49
    I mean to say if such things happen like we are running out of cursor packages then is this information getting logged somewhere in db or diaglog??

    Like for overflows we can check in db snapshot. likewise is there any alternate way to check whether any UOW is causing this kind of scenarios??

  8. #8
    Join Date
    May 2003
    Location
    USA
    Posts
    5,737
    This is not uncommon, and I have dealt with it before, as have many DBA's. The link I provided explains why the error occurred (looking for 4th package which doesn't exist) and why DB2 throws the package not found error. If you don't believe what I told you, then get someone else to help you.
    M. A. Feldman
    IBM Certified DBA on DB2 for Linux, UNIX, and Windows
    IBM Certified DBA on DB2 for z/OS and OS/390

  9. #9
    Join Date
    Aug 2011
    Location
    Mumbai,India
    Posts
    49
    Hi

    Please dont get me wrong. I have checked the link u provided and it stated the package is not bound with database. whereas in my case issue is sumthing else.. I thought cursor package is somewhat like package handlers... i dont have that much knowledge abt packages and their working...

    Anyways thanks for the guidance...

  10. #10
    Join Date
    May 2003
    Location
    USA
    Posts
    5,737
    Quote Originally Posted by shore View Post
    Hi

    Please dont get me wrong. I have checked the link u provided and it stated the package is not bound with database. whereas in my case issue is sumthing else.. I thought cursor package is somewhat like package handlers... i dont have that much knowledge abt packages and their working...

    Anyways thanks for the guidance...
    No it is not something else. The link I provided says the following:

    "By default, DB2 creates three packages for each type of package. In this case NULLID.SYSLH2yy is reserved for statements with CURSORHOLD on and isolation level Cursor Stability. The package SYSLH203 means that DB2 is looking for the 4th package (200 is first, 201 is second, etc) of this type, but it does not exist."

    DB2 is bound by default with 3 of those packages and they are all in use, which means really crappy code (or some setting in WAS is wrong).
    M. A. Feldman
    IBM Certified DBA on DB2 for Linux, UNIX, and Windows
    IBM Certified DBA on DB2 for z/OS and OS/390

  11. #11
    Join Date
    Aug 2011
    Location
    Mumbai,India
    Posts
    49
    Hi Marcus,

    I am little confused. Can u please help me explain this :

    $db2 "select pkgname,valid from syscat.packages" | grep -i syslh20
    SYSLH203 Y
    SYSLH204 Y
    SYSLH205 Y
    SYSLH200 Y
    SYSLH201 Y
    SYSLH202 Y

    Its showing that package is already bound with database. I am not getting the reason of

    If db2 is looking for 4th package and that package is already bound with database then why it is showing error msg that package not found. ??

    Please help me clear my doubt.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •