I have a strange behavior in an SQLRPGLE program accessing iSeries DB2 and Oracle via Oracle Access Manager.
The program is very simple and reads values from two Oracle Tables in this way :
a. SELECT .... into ..... FROM Table1 WHERE .....
return OK : 1 row as expected with my two fields filled.
b. SELECT .... into ..... FROM Table2 WHERE .....
return OK : 1 row as expected with other two fields filled from the 2nd table.
c. SELECT .... into ..... FROM Table2 WHERE .....
the same SELECT on the same table as in point b. but with different WHERE conditions.
Now imagine that my select at point c. doesn't return any value and i get a return sqlcode = 100.
Everything is ok so far, BUT :
if the next select (after my c. Select on Table2 ended with sqlcode=100) is again a a. SELECT (on Table1) I get an sqlcode = -969 / sqlstate = 58033 wich means :
Error occurred when passing request to application requester driver program
associated with the CPD3E06 about invalid data on format ARXD0100 of the ARD program.
It looks like (just my two cents...) something about incorrect values in the SQLDA area.
The Oracle DBA doesn't find anything strange on Oracle Server Side.
Everything works like a charm if i always find records and if i never have an sqlcode=100.
Again everything works if, after the c. SELECT on Table2 I execute another same SELECT on Table2.
No problems with same instructions directly typed in STRSQL interactive session.
Thanks in advance for any info, wich would be much appreciated !
Bye, Marco.
iSeries box : V5R4M0
Oracle : 10.2.0.3.0
Oracle Access Manager : 10.2.0.1.0

By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States.
Privacy

Processing your response...

Discuss This Question: 4 &nbspReplies

There was an error processing your information. Please try again later.

By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States.
Privacy

Since the ARD is from Oracle, call their support number and get them to fix it. It's perfectly possible that the way they will fix it is to get IBM to create a new DB2 PTF, but Oracle support will almost certainly have to be in charge of the problem report. Unless Oracle provides you with the full source code and the full installation procedure, you will have no way of giving IBM what they need.
Since Oracle is likely to be very unwilling to part with the source, only they can deal with IBM... and that will only happen if they can demonstrate that something in DB2 is at fault by showing the buffers or memory or parms or whatever is at the root of the problem. Without source, you don't stand a chance even if IBM needs to create a fix. IBM has no way of knowing what to fix without knowing what instructions the ARD is executing.
Call Oracle.
Tom

Hmmm, how about ... documentation ?
"If Access Manager is unable to map an error code, then it returns a SQLCODE of -969
and a SQLSTATE which applies to the class code of the error. For example, all syntax
errors have a SQLSTATE class code of 42. Therefore, if Access Manager receives a
syntax parsing error from the Oracle server (which it cannot map), then it returns
SQLCODE of -969 and SQLSTATE 42000.
If you are unable to determine the root cause of the error based on the SQLCODE and
SQLSTATE that are returned to the application, then check the job log for more details.
All Oracle errors and message text are displayed in the job log at the time that the error
occurs."
from Oracle® Access Manager for AS/400 - Installation and User’s Guide

I mostly agree with Carlosdl. The joblog would be what's given to Oracle Support. It would be up to them to track down what's going wrong in their ARD. That documentation only helps the product user to know what specifically needs to be given to Oracle Support.
Not that this does not mean "The Oracle DBA...". It means call the Oracle Support group for whomever sold the ARD to you.
Tom

By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States.
Privacy

Processing your reply...

Ask a Question

Free Guide: Managing storage for virtual environments

Complete a brief survey to get a complimentary 70-page whitepaper featuring the best methods and solutions for your virtual environment, as well as hypervisor-specific management advice from TechTarget experts. Don’t miss out on this exclusive content!

Share this item with your network:

To follow this tag...

By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States.
Privacy