IBM Support

SQL0805N - package NULLID.SYSSH203 cannot be found

Troubleshooting


Problem

Received SQL0805N error when application is connecting to DB2. The error is stating that package NULLID.SYSSH203 cannot be found.

Symptom

Possble errors may include:


com.ibm.db2.jcc.b.SQLException: NULLID.SYSSH203 0X5259634D564C2213
Error code: -805 SQL state: 51002

Cause

The cause is that the package SYSSH203 can not exist as you can only have 3 packages (64 sections) of small packages. Thus you will only view SYSSH200, SYSSH201, SYSSH202 package names listed in the database. The information center contains a definition of the DB2 CLI file and package names.

The NULLID.SYSSH203 is not a valid package in DB2 UDB V8 or DB2 LUW V9.1, V9.5, or V9.7. The packages for dynamic SQL statements follow this naming convention:

NULLID.SYSscxyy
where
s = size: S for small, L for large
c = cursor hold attribute: H for held, N for non-held
x = isolation level:
0 = NC
1 = UR
2 = CS
3 = RS
4 = RR
yy = package iteration 00 through FF

For example, package NULLID.SYSSH200 is a small package (65 sections), using WITH HOLD cursors, with isolation of cursor stability, and is the first iteration of the package. Thus the NULLID.SYSSH203 is a small package using WITH HOLD cursors, with isolation of CS, which means there is not a fourth iteration of a small package.

NULLID.SYSSH200, NULLID.SYSSH201, and NULLID.SYSSH202 are all valid SYSSH2xx packages, but not NULLID.SYSSH203, NULLID.SYSSH204, etc.
DB2 only has a maximum of 3 small packages created for each isolation level and cursor hold option.

Diagnosing The Problem

You can use the following query to view all packages for a DB2 LUW database:

"select * from syscat.syspackages"

Resolving The Problem

The resolution is to change the application so that it doesn't use all the small packages. If changing the application is not an option then you may try setting the CLI configuration keyword OnlyUseBigPackages to a value of 1 in the applications db2cli.ini file. Read about this in the DB2 information center.


The DB2 CLI keyword OnlyUseBigPackages may be used in DB2 V8 only if FP18 is applied due to APAR LI71334

Use these commands to add the keyword OnlyUseBigPackages to your applications db2cli.ini file:

1. log on as the instance owner

2. run the update command:

db2 UPDATE CLI CFG FOR SECTION COMMON USING OnlyUseBigPackages 1

Note that the large packages may also encounter an out of package error. See link to the SYSLH203 below for resolution on that issue.

[{"Product":{"code":"SSEPGG","label":"Db2 for Linux, UNIX and Windows"},"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Component":"Programming Interface - Bind","Platform":[{"code":"PF002","label":"AIX"},{"code":"PF010","label":"HP-UX"},{"code":"PF016","label":"Linux"},{"code":"PF027","label":"Solaris"},{"code":"PF033","label":"Windows"}],"Version":"9.7;10.1;10.5","Edition":"","Line of Business":{"code":"LOB10","label":"Data and AI"}},{"Product":{"code":"SSEPDU","label":"Db2 Connect"},"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Component":null,"Platform":[{"code":"PF002","label":"AIX"},{"code":"PF010","label":"HP-UX"},{"code":"PF016","label":"Linux"},{"code":"PF027","label":"Solaris"},{"code":"PF033","label":"Windows"}],"Version":"9.7;9.5;9.1;10.1","Edition":"","Line of Business":{"code":"LOB10","label":"Data and AI"}}]

Document Information

Modified date:
16 June 2018

UID

swg21115245