× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



Hi All,

Identified the Issue.

I customized Skott Klements Parser YAJLINTO and named it as PARSERINTO.
Also passed extra values as input in the user parameter portion of
DATA-INTO opcode.

The issue here is, the user parameter value length defined in the Service
program module (DATA-INTO) is 9500 Character, and the same user parameter
pointer is mapped to an work variable in the customized parser program
whose length is 10000 character. These two are not in sync.

When I changed the user parameter length in the Service program module as
10000 Character, it worked fine:)!!!

Special thanks to Mark and Jon for helping me out to identify the issue:).

Regards,
Suren

On Tue, May 11, 2021 at 8:05 PM Jon Paris <jon.paris@xxxxxxxxxxxxxx> wrote:

In that case my best guess is that the data/pointer is being corrupted due
to a length mismatch somewhere along the line.

As to the pointers - you could deal with it without pointers by simply
using varsize as a parameter option. But I see why you did it.

So you are passing these pointers by value?


Jon

On May 11, 2021, at 12:53 AM, Suren K <suren7437@xxxxxxxxx> wrote:

Hi Jon,

I have verified the pointer parameters value using EVAL P00_OutPtr:c 1000
in debug mode. All the pointers have valid values.

This is a skeleton program, which I will be using the same skeleton for
every new IWS transaction. All other services are working fine. I am
facing
the issue with this newly created transaction alone.

Why I used a pointer as a parameter, my transaction flow is like Service
Program -> Program B -> Program C -> Processing program. For all the IWS
transactions Program B and Program C are common which will do some
generic
processing and will send the JSON body parameter as is to the next
program
without touching.

So for some transactions JSON body will be of 1000 length data and for
some
20000 length data. So I passed as a pointer by allocating the size in the
Service program and using the same size in the processing program for
doing
the process.

Regards,
Suren




On Tue, May 11, 2021 at 1:07 AM Jon Paris <jon.paris@xxxxxxxxxxxxxx>
wrote:

Have you looked at the pointers to see if they are valid? The error
message would hint that one of them is not. Easy enough to see in
debug.

The fact that the explosion occurs during initialization would hint at
bad
parms.

Not sure why you are passing pointers - not the most usual and
error-proof
way of passing parms.


Jon Paris

On May 10, 2021, at 12:23 PM, Suren K <suren7437@xxxxxxxxx> wrote:

Hi Jon,

Wrk_Input is just a character field with length 10000.

Also, looks like the issue is not with the data-gen program, it looks
like
some other issue. If I remove the data-gen code and move the JSON value
as
a hard coded value, then I am getting the same set of errors with the
next
call program command.

Example,

// data-gen DS_Input %data(Wrk_Input:'doc=string countprefix=num_')
Commented this line
// %gen('YAJLDTAGEN');

P00_Header = Wrk_Header;
P00_InpPtr = %addr(Wrk_Input);
P00_ErrPtr = %addr(ED_Errors);
P00_WrnPtr = %addr(ED_Warnings);
P00_OutPtr = %addr(DS_Output);

// Call the Architecture Program to process the Request
Pr_PROGRAMA(P00_Header:P00_InpPtr:P00_WrnPtr:
P00_ErrPtr:P00_OutPtr:httpSts);

I am getting the below errors
Ownership of object FLDSPACE in QTEMP type *USRSPC changed.
Pointer not set for location referenced.
Error caused procedure PROGRAMA in program *LIBL/PROGRAMA to stop
during initialization.

Regards,
Suren

On Mon, May 10, 2021 at 9:43 PM Jon Paris <jon.paris@xxxxxxxxxxxxxx>
wrote:

Where and how is Wrk_Input defined? Most obvious guess is that it is
a
parm that is not actually being passed.


Jon Paris

On May 10, 2021, at 3:28 AM, Suren K <suren7437@xxxxxxxxx> wrote:

Hi All,

I am facing this weird issue which I am not able to identify using
the
job
log. It will be more helpful if anyone points me in the right
direction
to
identify the issue.

I created a Service Program which I will configure in IWS Service.
Whenever
a request comes from the External world this Service program is the
first
program which will be executed.

I am getting the input in JSON format and I am using the DATA-INTO
and
DATA-GEN opcodes in the Service program module for parsing and
generating
the JSON.

Now, in the Service program module i have one of the below line

data-gen DS_Input %data(Wrk_Input:'doc=string countprefix=num_')
%gen('YAJLDTAGEN');

I am getting this error while executing this code,

Pointer not set for location referenced.
Error caused procedure _QRNI_GLOB in program LIBL/YAJLDTAGEN to stop
during initialization.
Error RNX8001 occurred while running the program or procedure for the
DATA-GEN operation.

Any response will be very much appreciated.

Regards,
Suren
--
This is the RPG programming on IBM i (RPG400-L) mailing list
To post a message email: RPG400-L@xxxxxxxxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives
at https://archive.midrange.com/rpg400-l.

Please contact support@xxxxxxxxxxxxxxxxxxxx for any subscription
related questions.

Help support midrange.com by shopping at amazon.com with our
affiliate
link: https://amazon.midrange.com

--
This is the RPG programming on IBM i (RPG400-L) mailing list
To post a message email: RPG400-L@xxxxxxxxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives
at https://archive.midrange.com/rpg400-l.

Please contact support@xxxxxxxxxxxxxxxxxxxx for any subscription
related
questions.

Help support midrange.com by shopping at amazon.com with our
affiliate
link: https://amazon.midrange.com

--
This is the RPG programming on IBM i (RPG400-L) mailing list
To post a message email: RPG400-L@xxxxxxxxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives
at https://archive.midrange.com/rpg400-l.

Please contact support@xxxxxxxxxxxxxxxxxxxx for any subscription
related questions.

Help support midrange.com by shopping at amazon.com with our affiliate
link: https://amazon.midrange.com

--
This is the RPG programming on IBM i (RPG400-L) mailing list
To post a message email: RPG400-L@xxxxxxxxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives
at https://archive.midrange.com/rpg400-l.

Please contact support@xxxxxxxxxxxxxxxxxxxx for any subscription
related
questions.

Help support midrange.com by shopping at amazon.com with our affiliate
link: https://amazon.midrange.com

--
This is the RPG programming on IBM i (RPG400-L) mailing list
To post a message email: RPG400-L@xxxxxxxxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives
at https://archive.midrange.com/rpg400-l.

Please contact support@xxxxxxxxxxxxxxxxxxxx for any subscription
related questions.

Help support midrange.com by shopping at amazon.com with our affiliate
link: https://amazon.midrange.com

--
This is the RPG programming on IBM i (RPG400-L) mailing list
To post a message email: RPG400-L@xxxxxxxxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/rpg400-l
or email: RPG400-L-request@xxxxxxxxxxxxxxxxxx
Before posting, please take a moment to review the archives
at https://archive.midrange.com/rpg400-l.

Please contact support@xxxxxxxxxxxxxxxxxxxx for any subscription related
questions.

Help support midrange.com by shopping at amazon.com with our affiliate
link: https://amazon.midrange.com


As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 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.