|
Hi, all,
I have had a weird problem when I run a Java batch program on AS/400 (V5R1).
I use native JDBC for data connection. The error occurred randomly at
different time and different stage of the batch processes. Most of time,
the batch completed no problems at all, but sometimes, it fails. It seems
to me that it is something to do with the system resources. But I could not
figure out exactly what cause the errors. I have attached the joblog. the
error start with MSGID: MCH3601, type: Escape, Message: Pointer not set
for location referenced.
Does any one have any ideas about this error?
Also, I have another question about the message in this joblog (it does not
cause any problem yet). The message is:
Message . . . . : Job 030659/QUSER/QSQSRVR used for SQL server mode
processing.
Cause . . . . . : A Structured Query Language (SQL) statement was executed
while running in SQL server mode. SQL statements for this connection or
thread will be processed in job
030659/QUSER/QSQSRVR.
Technical description . . . . . . . . : SQL server mode was requested by
either setting the SQL server mode job attribute, or by setting the server
mode environment
attribute via the SQL Call Level
Interface. When running in this mode, SQL statements are processed by a
separate job, which runs under the user profile
specified for the connection. The thread identifier is 2 and the connection
is to Relational Database WILM620. If the Relational
Database name is *N, this means that all connections for the thread will use
the same job.
Is there any problem to run SQL statement in SQL server mode? My SQL
statement does not specify the settings. Maybe by default, it use SQL
server mode? If not run in SQL server mode, what other options I have and
how to set the options, if any?
Thanks.
<<QPJOBLOG031352.txt>>
Wayne
5722SS1 V5R1M0 010525 Job Log
S1030PDM 03/31/03 12:51:18 Page 1
Job name . . . . . . . . . . : QZSHSH User . . . . . . : WXU
Number . . . . . . . . . . . : 031352
Job description . . . . . . : FSSDEV Library . . . . . : QGPL
MSGID TYPE SEV DATE TIME FROM PGM
LIBRARY INST TO PGM LIBRARY INST
CPF1124 Information 00 03/31/03 12:20:51 QWTPIIPP
QSYS 067E *EXT *N
Message . . . . : Job 031352/WXU/QZSHSH
started on 03/31/03 at 12:20:52 in
subsystem QINTER in QSYS. Job entered
system on 03/31/03 at 12:20:52.
JVAB529 Diagnostic 40 03/31/03 12:23:46 QJVAUTLJVM
QSYS *STMT QJVAJVM QSYS *STMT
From module . . . . . . . . : QJVAUTLJVM
From procedure . . . . . . : JvaSendMsg
Statement . . . . . . . . . : 1382
To module . . . . . . . . . : RUNJAVA
To procedure . . . . . . . : RunJava
Statement . . . . . . . . . : 2902
Message . . . . : Public write authority
on ".".
Cause . . . . . : Directory "." in the
classpath has public write authority.
If more than one class file in a
directory has the same name, the first one
found is run. Recovery . . . : If the
Classpath security check level
(CHKPATH) is *SECURE, the command cannot
complete if a directory in the
classpath has public write authority.
Have your administrator remove public
write authority from directory ".", or
change CHKPATH and run the command
again. If directory "." remains public
write authority and CHKPATH is not
*SECURE, you may verify which classes
are run by setting the OPTION
parameter to *VERBOSE and running the
command again.
JVAB529 Diagnostic 40 03/31/03 12:23:46 QJVAUTLJVM
QSYS *STMT QJVAJVM QSYS *STMT
From module . . . . . . . . : QJVAUTLJVM
From procedure . . . . . . : JvaSendMsg
Statement . . . . . . . . . : 1382
To module . . . . . . . . . : RUNJAVA
To procedure . . . . . . . : RunJava
Statement . . . . . . . . . : 2902
Message . . . . : Public write authority
on "/ncmgreece".
Cause . . . . . : Directory "/ncmgreece"
in the classpath has public write
authority. If more than one class file
in a directory has the same name, the
first one found is run. Recovery . . .
: If the Classpath security check
level (CHKPATH) is *SECURE, the command
cannot complete if a directory in
the classpath has public write
authority. Have your administrator remove
public write authority from directory
"/ncmgreece", or change CHKPATH and
run the command again. If directory
"/ncmgreece" remains public write
authority and CHKPATH is not *SECURE,
you may verify which classes are run
by setting the OPTION parameter to
*VERBOSE and running the command again.
SQL7908 Completion 00 03/31/03 12:24:05 QSQROUTE
QSYS *STMT QSQCLI QSYS *STMT
From module . . . . . . . . : QSQROUTE
From procedure . . . . . . : SQSERVER
Statement . . . . . . . . . : 31333
To module . . . . . . . . . : SQLCON
To procedure . . . . . . . : SQLConnect
Statement . . . . . . . . . : 3681
Message . . . . : Job
030659/QUSER/QSQSRVR used for SQL server mode
processing.
Cause . . . . . : A Structured Query
Language (SQL) statement was executed
while running in SQL server mode. SQL
statements for this connection or
thread will be processed in job
030659/QUSER/QSQSRVR. Technical description
. . . . . . . . : SQL server mode was
requested by either setting the SQL
server mode job attribute, or by setting
the server mode environment
attribute via the SQL Call Level
Interface. When running in this mode, SQL
5722SS1 V5R1M0 010525 Job Log
S1030PDM 03/31/03 12:51:18 Page 2
Job name . . . . . . . . . . : QZSHSH User . . . . . . : WXU
Number . . . . . . . . . . . : 031352
Job description . . . . . . : FSSDEV Library . . . . . : QGPL
MSGID TYPE SEV DATE TIME FROM PGM
LIBRARY INST TO PGM LIBRARY INST
statements are processed by a separate
job, which runs under the user
profile specified for the connection.
The thread identifier is 2 and the
connection is to Relational Database
WILM620. If the Relational Database
name is *N, this means that all
connections for the thread will use the same
job.
SQL7908 Completion 00 03/31/03 12:24:18 QSQROUTE
QSYS *STMT QSQCLI QSYS *STMT
From module . . . . . . . . : QSQROUTE
From procedure . . . . . . : SQSERVER
Statement . . . . . . . . . : 31333
To module . . . . . . . . . : SQLCON
To procedure . . . . . . . : SQLConnect
Statement . . . . . . . . . : 3681
Message . . . . : Job
031093/QUSER/QSQSRVR used for SQL server mode
processing.
Cause . . . . . : A Structured Query
Language (SQL) statement was executed
while running in SQL server mode. SQL
statements for this connection or
thread will be processed in job
031093/QUSER/QSQSRVR. Technical description
. . . . . . . . : SQL server mode was
requested by either setting the SQL
server mode job attribute, or by setting
the server mode environment
attribute via the SQL Call Level
Interface. When running in this mode, SQL
statements are processed by a separate
job, which runs under the user
profile specified for the connection.
The thread identifier is 2 and the
connection is to Relational Database
WILM620. If the Relational Database
name is *N, this means that all
connections for the thread will use the same
job.
MCH3601 Escape 40 03/31/03 12:24:19 QSQCLI
QSYS *STMT QSQCLI QSYS *STMT
From module . . . . . . . . : SQLED
From procedure . . . . . . :
SQLExecDirect
Statement . . . . . . . . . : 3737
To module . . . . . . . . . : SQLED
To procedure . . . . . . . :
SQLExecDirect
Statement . . . . . . . . . : 3737
Message . . . . : Pointer not set for
location referenced.
Cause . . . . . : A pointer was used,
either directly or as a basing
pointer, that has not been set to an
address.
CEE9901 Escape 30 03/31/03 12:24:19 QLEAWI
QSYS *STMT QJVAJDBC QSYSDIR *STMT
From module . . . . . . . . : QLEDEH
From procedure . . . . . . : Q LE
leDefaultEh
Statement . . . . . . . . . : 235
To module . . . . . . . . . : QJVACLII
To procedure . . . . . . . :
JDBCExecDirect
Statement . . . . . . . . . : 1928
Message . . . . : Application error.
MCH3601 unmonitored by QSQCLI at
statement 0000003737, instruction
X'0000'.
Cause . . . . . : The application ended
abnormally because an exception
occurred and was not handled. The name
of the program to which the
unhandled exception is sent is QSQCLI
SQLED SQLExecDirect. The program was
stopped at the high-level language
statement number(s) 0000003737 at the
time the message was sent. If more than
one statement number is shown, the
program is an optimized ILE program.
Optimization does not allow a single
statement number to be determined. If
*N is shown as a value, it means the
real value was not available. Recovery
. . . : See the low level messages
5722SS1 V5R1M0 010525 Job Log
S1030PDM 03/31/03 12:51:18 Page 3
Job name . . . . . . . . . . : QZSHSH User . . . . . . : WXU
Number . . . . . . . . . . . : 031352
Job description . . . . . . : FSSDEV Library . . . . . : QGPL
MSGID TYPE SEV DATE TIME FROM PGM
LIBRARY INST TO PGM LIBRARY INST
previously listed to locate the cause of
the exception. Correct any errors,
and then try the request again.
CPC1126 Completion 50 03/31/03 12:50:35 QWTCCCNJ
QSYS 0480 *EXT *N
Message . . . . : Job 031352/WXU/QZSHSH
was ended by user WXU.
Cause . . . . . : User WXU issued a
controlled end job request for job
031352/WXU/QZSHSH.
CPC1235 Completion 50 03/31/03 12:51:06 QWTSETME
QSYS 0011 *EXT *N
Message . . . . : Job 031352/WXU/QZSHSH
is ending immediately.
Cause . . . . . : The delay time for the
controlled end job has been
reached.
CEE0200 Information 10 03/31/03 12:51:07 QLEAWI
QSYS *STMT QZSHSH QSHELL *STMT
From module . . . . . . . . : QLEPM
From procedure . . . . . . : Q LE
leBdyEpilog
Statement . . . . . . . . . : 1061
To module . . . . . . . . . : QZSHSH
To procedure . . . . . . . : _CXX_PEP
Statement . . . . . . . . . : 136
Message . . . . : This job is about to
end.
Cause . . . . . : The job is being
terminated because the job is capable of
having multiple threads and the
application has issued an exit(), abort() or
their equivalent APIs, an exception has
occurred and is not being handled,
or a return from main() has occurred in
a program that runs in a *NEW
Activation Group.
CPF1164 Completion 00 03/31/03 12:51:18 QWTMCEOJ
QSYS 00BB *EXT *N
Message . . . . : Job 031352/WXU/QZSHSH
ended on 03/31/03 at 12:51:18; 3
seconds used; end code 50 .
Cause . . . . . : Job 031352/WXU/QZSHSH
completed on 03/31/03 at 12:51:18
after it used 3 seconds processing unit
time. The job had ending code 50.
The job ended after 1 routing steps with
a secondary ending code of 0. The
job ending codes and their meanings are
as follows: 0 - The job completed
normally. 10 - The job completed
normally during controlled ending or
controlled subsystem ending. 20 - The
job exceeded end severity (ENDSEV job
attribute). 30 - The job ended
abnormally. 40 - The job ended before
becoming active. 50 - The job ended
while the job was active. 60 - The
subsystem ended abnormally while the job
was active. 70 - The system ended
abnormally while the job was active. 80
- The job ended (ENDJOBABN command).
90 - The job was forced to end after the
time limit ended (ENDJOBABN
command). Recovery . . . : For more
information, see the Work Management
topic in the Information Center book,
http://www.as400.ibm.com/infocenter.
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2025 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.