View previous topic :: View next topic |
Author |
Message |
bade_miya Beginner
Joined: 10 Dec 2003 Posts: 110 Topics: 38
|
Posted: Tue Jul 13, 2010 2:12 pm Post subject: ISRT failing for large messages |
|
|
Hi All,
We are trying to invoke a test program via IMS Connect. I am using a 700K input request. The IMS application program is invoked and it is able to read the entire message through multiple GN calls. But when I am inserting the response back to the IMS message queue via multiple ISRT calls, the program is failing with U0476 error. The same program without any code change is working for smaller messages like 200K and client gets back the message.
My question is whether we need to take anything special into consideration while inserting multiple segments. I am dividing it into chunks of 32K (32763 bytes) data for each insert.
Here is my ISRT call
Code: |
MOVE LOW-VALUES TO DFSAIB-PCBADDR-X
MOVE IMS-DC-AREA-LL TO DFSAIB-AIBOALEN-OUTLEN
MOVE ZEROS TO DFSAIB-AIBOAUSE-OUTUSE
MOVE IMS-DC-PCBNAME TO DFSAIB-AIBRSNM1-PCBNAME
CALL WS-AIBTDLI USING WS-IMS-PARM-COUNT
IMS-FUNC
DFSAIB-MASK
IMS-DC-AREA |
Am i doing something wrong here or forgetting something major?
Thanks
bade_miya |
|
Back to top |
|
|
kolusu Site Admin
Joined: 26 Nov 2002 Posts: 12376 Topics: 75 Location: San Jose
|
Posted: Tue Jul 13, 2010 3:03 pm Post subject: |
|
|
bade_miya,
AFAIR , U0476 abend is due to PSB error. Make sure the IMS-DC-PCBNAME contains a valid PSB name
Kolusu |
|
Back to top |
|
|
bade_miya Beginner
Joined: 10 Dec 2003 Posts: 110 Topics: 38
|
Posted: Tue Jul 13, 2010 3:16 pm Post subject: |
|
|
Kolusu,
Thanks for the reply. I am only using IO-PCB in my program. I am passing 'IOPCB ' to IMS-DC-PCBNAME. Another doubt I have is that if it was a problem with the PCB, why is it not failing for smaller messages and for the GU calls? I checked the manuals and it says about various reasons (including the one which you mentioned). One of the reasons is because Quote: | "The address of the PCB in the call is not one of the PCB addresses
passed to the application at its entry point." | Is there any way the address of a PCB can change between entry point after several GN calls unless and until you manually cahnge it in the program?
Thanks
bade_miya |
|
Back to top |
|
|
Anuj Dhawan Intermediate
Joined: 19 Jul 2007 Posts: 298 Topics: 7 Location: Mumbai,India
|
Posted: Tue Jul 13, 2010 10:34 pm Post subject: |
|
|
bade_miya wrote: | Is there any way the address of a PCB can change between entry point after several GN calls unless and until you manually cahnge it in the program? | There is no way "PCB address is changed on the fly" - once the PCBs are defined in PSB, they are written to stones.
On the other hand, usually you get this abend when the DLI call specifies a PCB, that is not addressed in the entry statement. And as PCBs exists out side the application program. So we need to address them.That's what entry statement does, gets address of PCB's. Having said that - check if in linkage section concerned PCB is coded (don't bother about the order). BUT Entry statement should be in the same order as in PSB. Also, CALL should have a pcb that was properly addressed in entry as well as present in linkage. _________________ Regards,
Anuj |
|
Back to top |
|
|
bade_miya Beginner
Joined: 10 Dec 2003 Posts: 110 Topics: 38
|
Posted: Wed Jul 14, 2010 9:56 pm Post subject: |
|
|
Thanks everyone for the feedback. Just came here to tell you that my issue is resolved and the root cause so that someone else can benefit from it.
In my case, the large message was overflowing in the working storage section to the AIB mask defined under the overflowing field. Thus the first 8 bytes of the AIB mask was overwritten by some value other than 'DFSAIB'. The manual says one of the reason for U0476 abend to be
An address for an AIB was provided but the first eight bytes of the block do not equal 'DFSAIB'.
Fixing the overflow fixed my AIB mask and rectified the U0476 issue. Hope this will be helpful for someone |
|
Back to top |
|
|
dbzTHEdinosauer Supermod
Joined: 20 Oct 2006 Posts: 1411 Topics: 26 Location: germany
|
Posted: Thu Jul 15, 2010 3:01 am Post subject: |
|
|
bade miya,
Thank you for returning with the resolution. _________________ Dick Brenholtz
American living in Varel, Germany |
|
Back to top |
|
|
expat Intermediate
Joined: 01 Mar 2007 Posts: 475 Topics: 9 Location: Welsh Wales
|
Posted: Thu Jul 15, 2010 3:33 am Post subject: |
|
|
bade_miya wrote: | Thanks everyone for the feedback. Just came here to tell you that my issue is resolved and the root cause so that someone else can benefit from it. | Excellent gesture. Thank you. _________________ If it's true that we are here to help others,
then what exactly are the others here for ? |
|
Back to top |
|
|
|
|