Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

DB2 V8.1 F1 - NULLID.SYSLH203

135 views
Skip to first unread message

joerg

unread,
May 21, 2003, 9:53:06 AM5/21/03
to
Hello,
we're facing again some troubles while using JDBC Type 4. In quite log
transaction with a lot of calculation in the select-statements the
following error occurs:

com.ibm.db2.jcc.c.SQLException: DB2 SQL error: SQLCODE: -805,
SQLSTATE: 51002, SQLERRMC: NULLID.SYSLH203

Does anybody have an idea how to solve the problem ? I think we reach
a ressource-limit, but I don't know which.

Joerg

Larry Menard

unread,
May 21, 2003, 10:04:58 AM5/21/03
to
Joerg,

Actually, a -805 is a "Package not found" error... nothing to do with
resource limitations (unless you were running out of package cache, in which
case I would expect a -973, not a -805).

The package it couldn't find is "NULLID.SYSLH203", but I've never found a
way to convert a package name like that into a bind file name.
--
Larry Menard
IBM Workstation Database (DB2) Performance Team
Defender of Geese and of All Things Natural


"joerg" <joerg....@publica.de> wrote in message
news:475a2480.03052...@posting.google.com...

PM (pm3iinc-nospam)

unread,
May 21, 2003, 1:32:42 PM5/21/03
to
Did you

db2jdbcbind -url jdbc:db2://LOCALHOST:50000/dbname -user **** -password
**** -size 20
(you may also use the option -tracelevel TRACE_ALL or some other options)

This should create the remaining/missing packages.

size 20 is the key i guess.

SYSLH203
L=large packages with 385 sections (there are also small ones with 65)
H=with hold
isolation level: 0=NC, 1=UR, 2=CS, 3=RS, 4=RR
then sequence from 00 thru FF

list package for all
db2jdbcbind ...
list package for all

compare


PM


"joerg" <joerg....@publica.de> a écrit dans le message de news:
475a2480.03052...@posting.google.com...

sha...@us.ibm.com

unread,
May 21, 2003, 12:04:06 PM5/21/03
to
I don't know any way either, but:
ddcspkgn is a tool db2 ships to display the package name in a bind file, and
db2bfd is a tool db2 ships to display bind file info.

If you can figure out which db2 client is getting the -805, go to the
sqllib's bnd subdir.
then try ddcspkgn on all the lst files, or (what I would do) grep
SYSLH203 *.bnd
to find the bind file. Then you need to bind that bind file from that
package...

Hope that helps,
Dave.

PM (pm3iinc-nospam)

unread,
May 21, 2003, 2:30:56 PM5/21/03
to
DB2 CLI Bind Files and Package Names
http://www-3.ibm.com/software/data/db2/udb/ad/v8/cli/r0007866.htm

If you're at fp1, be sure you get the right jdbc driver.
There was a problem with what was shipped in fp1.
look for db2v8fp1_ujdbc_fix or similar on the support site.


PM


joerg

unread,
May 22, 2003, 3:13:35 AM5/22/03
to
Hello,
thanks for your hints but the problem is still there and another
"really nice" situation occurs.

If I call:

java -cp db2jcc.jar com.ibm.db2.jcc.DB2Binder -url
jdbc:db2://lnxnp10:50800/spstest -user xxxx -password xxxx -size 20
-tracelevel TRACE_ALL

the following output results (concerning SYSLH203)

Package "SYSLH203": [ibm][db2][jcc][Thread:main][Connection@b753f8]
createStatement () called
[ibm][db2][jcc][Thread:main][Connection@b753f8] createStatement ()
returned Statement@191d8c1
[ibm][db2][jcc][Thread:main][Statement@191d8c1] executeQuery (SELECT *
FROM SYSIBM.SYSDUMMY1) called
[ibm][db2][jcc][t4] Request.flush() called at 2003-5-22 9:0:29 Thread:
main Tracepoint: 1
:
snipped
:
com.ibm.db2.jcc.c.SQLException
at com.ibm.db2.jcc.c.cf.e(cf.java:1108)
at com.ibm.db2.jcc.a.be.o(be.java:577)
at com.ibm.db2.jcc.a.be.g(be.java:129)
at com.ibm.db2.jcc.a.be.a(be.java:40)
at com.ibm.db2.jcc.a.s.a(s.java:31)
at com.ibm.db2.jcc.a.bq.g(bq.java:103)
at com.ibm.db2.jcc.c.cf.g(cf.java:866)
at com.ibm.db2.jcc.c.cf.a(cf.java:1330)
at com.ibm.db2.jcc.c.cf.executeQuery(cf.java:262)
at com.ibm.db2.jcc.c.g.a(g.java:202)
at com.ibm.db2.jcc.DB2Binder.binderMain(DB2Binder.java:109)
at com.ibm.db2.jcc.DB2Binder.main(DB2Binder.java:78)
[ibm][db2][jcc] BEGIN TRACE_DIAGNOSTICS
[ibm][db2][jcc][SQLException@2d9c06] java.sql.SQLException
[ibm][db2][jcc][SQLException@2d9c06][Sqlca@5e5a50] DB2 SQLCA from
server
[ibm][db2][jcc][SQLException@2d9c06][Sqlca@5e5a50] SqlCode =
-805
[ibm][db2][jcc][SQLException@2d9c06][Sqlca@5e5a50] SqlErrd = {
-2146303874, 0, 0, 0, 0, 0 }
[ibm][db2][jcc][SQLException@2d9c06][Sqlca@5e5a50] SqlErrmc =
NULLID.SYSLH203 0X5359534C564C3031
[ibm][db2][jcc][SQLException@2d9c06][Sqlca@5e5a50] SqlErrmcTokens = {
NULLID.SYSLH203 0X5359534C564C3031 }
[ibm][db2][jcc][SQLException@2d9c06][Sqlca@5e5a50] SqlErrp =
SQLRACFI
[ibm][db2][jcc][SQLException@2d9c06][Sqlca@5e5a50] SqlState =
51002
[ibm][db2][jcc][SQLException@2d9c06][Sqlca@5e5a50] SqlWarn =
[ibm][db2][jcc][SQLException@2d9c06] SQL state = 51002
[ibm][db2][jcc][SQLException@2d9c06] Error code = -805
[ibm][db2][jcc][SQLException@2d9c06] Tokens = NULLID.SYSLH203
0X5359534C564C3031
[ibm][db2][jcc][SQLException@2d9c06] Stack trace follows


com.ibm.db2.jcc.c.SQLException: DB2 SQL error: SQLCODE: -805,

SQLSTATE: 51002, SQLERRMC: NULLID.SYSLH203 0X5359534C564C3031
at com.ibm.db2.jcc.c.cf.e(cf.java:1108)
at com.ibm.db2.jcc.a.be.o(be.java:577)
at com.ibm.db2.jcc.a.be.g(be.java:129)
at com.ibm.db2.jcc.a.be.a(be.java:40)
at com.ibm.db2.jcc.a.s.a(s.java:31)
at com.ibm.db2.jcc.a.bq.g(bq.java:103)
at com.ibm.db2.jcc.c.cf.g(cf.java:866)
at com.ibm.db2.jcc.c.cf.a(cf.java:1330)
at com.ibm.db2.jcc.c.cf.executeQuery(cf.java:262)
at com.ibm.db2.jcc.c.g.a(g.java:202)
at com.ibm.db2.jcc.DB2Binder.binderMain(DB2Binder.java:109)
at com.ibm.db2.jcc.DB2Binder.main(DB2Binder.java:78)
[ibm][db2][jcc] END TRACE_DIAGNOSTICS


but if i call:

java -cp db2jcc.jar com.ibm.db2.jcc.DB2Binder -url
jdbc:db2://lnxnp10:50800/spstest -user xxxx -password xxxx -size 20

the following result occurs:

Package "SYSLH203": Already exists (No need to bind)

I'm just wondering about the output, but in addition later in the
binder-results the binder indicates that the packagecache is running
out of space. Any idea of an "perfect" packagecachesize ?

The driver should be also ok, here's the debug:

[ibm][db2][jcc] BEGIN TRACE_DRIVER_CONFIGURATION
[ibm][db2][jcc] Driver: IBM DB2 JDBC Universal Driver Architecture
1.1.67
[ibm][db2][jcc] Compatible JRE versions: { 1.3, 1.4 }
[ibm][db2][jcc] Range checking enabled: true

Thanks

Joerg

PM (pm3iinc-nospam)

unread,
May 22, 2003, 8:00:26 PM5/22/03
to

> .. thanks for your hints but the problem is still there ...

You say SYSLH203 is there (re : no need to bind/noop), so i'm a bit lost
here...
Is it ok or not?
I'd expect a 42710 error and not a 805 if the package is really there.

SqlErrp = SQLRACFI looks like a host product to me. (what os and
db2level do you access?)

db2 get db cfg for sample
db2 set db cfg for sample using PCKCACHESZ=...

Package cache size (4KB) (PCKCACHESZ) = ...

Depends on the installation, monitor package cache hit ratio, etc..
a.. pkg_cache_lookups (package cache lookups)
b.. pkg_cache_inserts (package cache inserts)
c.. pkg_cache_size_top (package cache high water mark)
d.. pkg_cache_num_overflows (package cache overflows)
Package Cache High Water Mark monitor element, etc.

The doc has plenty of info about that. (no magic number i can provide)


PM


joerg

unread,
May 27, 2003, 3:16:01 AM5/27/03
to
Hello,
again thanks for your help. Now I have solved the problem, the
following things we had to do:

increase APPLHEAPSZ to 16384
increase MAXAPPLS to 50 -> (PCKCACHE increases automatic)
doing jdbcbind

The reason for the problem was that firstof all the PCKCACHE was to
small because the MAXAPPLS - param is by default set to AUTOMATIC. The
jdbcbind with the DB2Binder-Class does not catch the Exception "not
enough pckcache" in a correct way. The package will be marked as bound
although the package is not really bound to the database. After the
increase of the MAXAPPLS to 50 the jdbcbind runs fine and the packages
are really bound. Then we were able to increase the applheapsz and now
everything runs fine.

I hope in future releases of the DB2 V8 the default of MAXAPPLS is
again set to 40 as in the DB2 V7.x

Thanks and hope the info helps

Joerg

------------------------------------------


"PM \(pm3iinc-nospam\)" <Pm3iinc...@sympatico.ca> wrote in message news:<Vacza.6537$c41.7...@news20.bellglobal.com>...

xixi

unread,
Jun 11, 2003, 10:56:06 AM6/11/03
to
Hello PM,


if i miss package SYSSH203, is that the size is 20 too? please advise.

"PM \(pm3iinc-nospam\)" <Pm3iinc...@sympatico.ca> wrote in message news:<ppNya.5617$c41.5...@news20.bellglobal.com>...

xixi

unread,
Jun 11, 2003, 1:04:23 PM6/11/03
to
hi my application experience missing package SYSSH203 error, then i
follow the command below
C:\Program Files\IBM\SQLLIB\BIN>java -cp "c:\program
files\ibm\sqllib\java\db2jc
c.jar" com.ibm.db2.jcc.DB2Binder -url jdbc:db2://pcddai2:50000/solpac
-user ddai
-password maryxu -size 20

but still couldn't find syssh203 package exist.

can you advise me? Thanks

you said list package for all, so what is the db2 command for this?


"PM \(pm3iinc-nospam\)" <Pm3iinc...@sympatico.ca> wrote in message news:<ppNya.5617$c41.5...@news20.bellglobal.com>...

xixi

unread,
Jun 11, 2003, 1:06:35 PM6/11/03
to
hi, i am using db2 udb v8.1 on windows, so what is the command to do
grep ?

i am try to follow what you said below but have limited resource.
what is the command to diplay package SYSSH203 in which bnd file?
thank you for help.

sha...@us.ibm.com wrote in message news:<3ECBA376...@us.ibm.com>...

PM (pm3iinc-nospam)

unread,
Jun 11, 2003, 3:51:10 PM6/11/03
to
It was mentionned somewhere in the links i gave you previously.
From what i've read, there are only 3 small packages and it's a fixed
number. (named 0, 1, 2)

I have no idea how one can 'request' to use the package SYSSH203. (your
case)
I don't know how when and why db2 chooses to use small or large packages.

If you code 65 dummy statements, does db2 choose a large package?

One thing that really bugs me is that cli and jdbc, ... share the same
packages.
Nowhere the doc says we have to use the CLIPK bind keyword and/or db2cli.ini
CLIPK keyword
to adjust jdbc vs cli packages when using the -size 20 parameter of
binder/db2jdbcbind.
But that should be for large packages and not for the small ones.

PM

PM (pm3iinc-nospam)

unread,
Jun 11, 2003, 5:38:08 PM6/11/03
to
to grep on windows, do

db2 list packages for all | findstr /i "SYSSH203"

PM


0 new messages