470,616 Members | 2,262 Online
Bytes | Developer Community
New Post

Home Posts Topics Members FAQ

Post your question to a community of 470,616 developers. It's quick & easy.

SQL4304N RC=1

I have a strange problem.. Creating and installing java stored
procedures through :
1) call sqlj.install_jar
2) Creating the sprocs db2 -td@ -vf sproc1.sql
3) call sqlj.refresh_classes ()
Checking that the jar is in the correct place /sqllib/function/jar and
that the jar file contains the expected files but .. trying to run the
sprocs results in
SQL4304N Java stored procedure or user-defined function
"schemaname.xxxxxx",
specific name "xxxxxx" could not load Java class "xxxxxx/yyyyyy",
reason
code "1". SQLSTATE=42724
I have approx 140 java procedures on the database server and the
problem seems to be as soon as I ad a proc with a new schema name I
will get sql4304 rc=1. If I change or replaces an existing sproc I dont
have any problems at all.
A restart of the dbm solves the problem but .. this shouldn't be
neccesary or ?
I have the following the dbm cfg :
Keep fenced process (KEEPFENCED) = YES
Number of pooled fenced processes (FENCED_POOL) =
MAX_COORDAGENTS
Initial number of fenced processes (NUM_INITFENCED) = 2
Java Development Kit installation path (JDK_PATH) = /usr/j2se
Java Virtual Machine heap size (4KB) (JAVA_HEAP_SZ) = 8192
/roger

Nov 20 '06 #1
2 4152
KEEPFENCED= yes will load your jar into memory until you restart db2.

If you do not issue the CALL SQLJ.REFRESH_CLASSES() statement after you
update Java routine classes, DB2 continues to use the previous versions
of the classes. The CALL SQLJ.REFRESH_CLASSES() statement only applies
to FENCED routines. DB2 refreshes the classes when a COMMIT or ROLLBACK
occurs.
call sqlj.refresh_classes ()
ka******@hotmail.com wrote:
I have a strange problem.. Creating and installing java stored
procedures through :
1) call sqlj.install_jar
2) Creating the sprocs db2 -td@ -vf sproc1.sql
3) call sqlj.refresh_classes ()
Checking that the jar is in the correct place /sqllib/function/jar and
that the jar file contains the expected files but .. trying to run the
sprocs results in
SQL4304N Java stored procedure or user-defined function
"schemaname.xxxxxx",
specific name "xxxxxx" could not load Java class "xxxxxx/yyyyyy",
reason
code "1". SQLSTATE=42724
I have approx 140 java procedures on the database server and the
problem seems to be as soon as I ad a proc with a new schema name I
will get sql4304 rc=1. If I change or replaces an existing sproc I dont
have any problems at all.
A restart of the dbm solves the problem but .. this shouldn't be
neccesary or ?
I have the following the dbm cfg :
Keep fenced process (KEEPFENCED) = YES
Number of pooled fenced processes (FENCED_POOL) =
MAX_COORDAGENTS
Initial number of fenced processes (NUM_INITFENCED) = 2
Java Development Kit installation path (JDK_PATH) = /usr/j2se
Java Virtual Machine heap size (4KB) (JAVA_HEAP_SZ) = 8192
/roger
Nov 20 '06 #2
Ok.. my java procs are FENCED and THREADSAFE , KEEPFENCED=NO is not an
option in a prodction environment according to all docs for DB2..
Notice again that problem occures , at least what I have seen, only
when I use a new schema name for my procs..
/roger

Nov 20 '06 #3

This discussion thread is closed

Replies have been disabled for this discussion.

Similar topics

4 posts views Thread by Spare Brain | last post: by
reply views Thread by Will Griffiths | last post: by
reply views Thread by Pedro Lucas via .NET 247 | last post: by
2 posts views Thread by Daniel Spaude | last post: by
2 posts views Thread by rag84dec | last post: by
By using this site, you agree to our Privacy Policy and Terms of Use.