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

sqlj.install_jar problem on both Solaris and Linux

3 views
Skip to first unread message

Xela

unread,
Aug 25, 2004, 4:25:01 PM8/25/04
to
Hi

A have a very annoying problem. I have written java strored procedures for
DB2 v8.1. Their deployement and usage is fine as long as the server is a
Windows one. But under Solaris 8 and Linux RH, the call of sqlj.install_jar
fails. It correctly create a directiory with the correct schema name, but
the jar is not copied in it. The error is "Permission Denied" SQLSTATE 38501
and in the log, we can see that calling sqlejReadJar fails in method
ZipFile.open. Any help would be greatly apreciated. Thaks for your
attention!

AL


Rhino

unread,
Aug 25, 2004, 7:39:35 PM8/25/04
to

"Xela" <ab...@yahoo.com> wrote in message
news:cgisiv$aqd$1...@apollon.grec.isp.9tel.net...
Check your file permissions for the directory containing the jar: do you
have write authority to that file in the file system?

If that's not the problem, what SQLCODE are you getting? The SQLSTATE is not
nearly as useful as the SQLCODE for most problems....

Rhino

Xela

unread,
Aug 26, 2004, 3:54:12 AM8/26/04
to

"Rhino" <rhi...@NOSPAM.sympatico.ca> wrote in message
news:vq9Xc.16825$_H5.5...@news20.bellglobal.com...

Yes I think have. Indeed, when the directory (schema name) )is created by
db2, its rights are "drwxrwxr-x".
It belongs to the instance login whose group has sysadm authority. I tried
to change the rigths to "drwxrwxrwx" and it is all the same. I have also
tried to connect to the db with alternate users. I tried to change the
primary group of the users, but without success.

The SQLCODE is SQL4302N . -4302/38501/[IBM][CLI

The stack log is :

2004-08-26-09.21.07.670993 Instance:db2inst1 Node:000
PID:17997(db2fmp (16865) 0) TID:1 Appid:none
BSU Java support sqlejCallJavaRoutine_dll Probe:315

Exception thrown during routine invocation:

0xFFBEDB78 : 0x001322C0 ..".

2004-08-26-09.21.07.717752 Instance:db2inst1 Node:000
PID:17997(db2fmp (16865) 0) TID:1 Appid:none
BSU Java support sqlejLogException Probe:10

ADM10000W A Java exception has been caught. The Java stack traceback has
been
written to the db2diag.log.

2004-08-26-09.21.07.744692 Instance:db2inst1 Node:000
PID:17997(db2fmp (16865) 0) TID:1 Appid:none
BSU Java support sqlejLogException Probe:10

java.util.zip.ZipException: Permission denied
at java.util.zip.ZipFile.open(Native Method)
at java.util.zip.ZipFile.<init>(ZipFile.java:112)
at java.util.zip.ZipFile.<init>(ZipFile.java:72)
at COM.ibm.db2.app.sqlejProcs.sqlejReadJar(sqlejProcs.java:76)

0xFFBEDA3C : 0x00000000 ....

2004-08-26-09.21.07.749982 Instance:db2inst1 Node:000
PID:17997(db2fmp (16865) 0) TID:1 Appid:none
routine_infrastructure sqlerJavaCallRoutine Probe:30

Error from DB2ER CallUDF. RC:

0xFFBEDF04 : 0xFFFFEF32 ...2

Many thanks for your attention
AL


Sean McKeough

unread,
Aug 26, 2004, 8:24:52 AM8/26/04
to
Probably one of the paths leading up to the jar directory does not have
read authority to other. When doing an install jar, db2 makes a fenced
stored procedure call to read out the list of classes & methods. To make
this call, the owner of the sqllib/adm/.fenced file must have read
access to the jar file.

Xela

unread,
Aug 26, 2004, 9:47:34 AM8/26/04
to
Well, evrething seems ok for the file accesses rights. Is the jar written in
a temporary place before to be copied into function/jar/<schema>. Indeed, I
a a very simple use case that does not work. After a fresh install under
RedHat 3, I create a Java proc via the Developpement Center, and it exhibit
the problem I described you. I try to use an IBM jdk131 to do that. Any
clue?

Thanks.

"Sean McKeough" <mcke...@nospam.ibm.com> wrote in message
news:412dd...@news3.prserv.net...

Sean McKeough

unread,
Aug 26, 2004, 11:12:39 AM8/26/04
to
The best way to see where your directory problem is would be to su to
the id that runs fenced routines, and then work your way backwards from
the jar file directory (try cating a file at each directory on the path).

I just tried this on a local RH box, and was able to install my jar...

Xela

unread,
Aug 26, 2004, 11:58:43 AM8/26/04
to
I tried this. Some directories had the sticky bit, but were still readable.
Now the path is comptletely rwx for all, but I still have the same problem.
I have installed DB2 using db2setup, with the workaround proposed by ibm
(using a link to an ibm jdk141. Can this be the issue? I also tried to make
links to jalibs in /usr/lib, as I had read this in ibm support site. I must
admit that I am quite desesperate right now. Thanks for your attention

AL

"Sean McKeough" <mcke...@nospam.ibm.com> wrote in message

news:412df...@news3.prserv.net...

Sean McKeough

unread,
Aug 26, 2004, 1:15:54 PM8/26/04
to
I'm asking around...I'll post any other info I can turn up...

Xela

unread,
Aug 27, 2004, 4:11:44 AM8/27/04
to
Thanks for your attention.
Well, it seems tha tfinally I found the solution for Linux (I haven't try
again for solaris). The problem seemed to originate from a bad integration
of db2 with the JDK. After having setted some symbolic links to jdk's dll
and setted some env variables to jdk's dir, I get it work. It was quite a
hard job! Hope this is the end of db2's installation trouble and that it is
also the solution for the Solaris platform. Thanks again.

AL

"Sean McKeough" <mcke...@nospam.ibm.com> wrote in message

news:412e1...@news3.prserv.net...

0 new messages