MVSFORUMS.com Forum Index MVSFORUMS.com
A Community of and for MVS Professionals
 
 FAQFAQ   SearchSearch   Quick Manuals   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

ISRT failing for large messages

 
Post new topic   Reply to topic   printer-friendly view    MVSFORUMS.com Forum Index -> IMS
View previous topic :: View next topic  
Author Message
bade_miya
Beginner


Joined: 10 Dec 2003
Posts: 110
Topics: 38

PostPosted: Tue Jul 13, 2010 2:12 pm    Post subject: ISRT failing for large messages Reply with quote

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
View user's profile Send private message
kolusu
Site Admin
Site Admin


Joined: 26 Nov 2002
Posts: 12376
Topics: 75
Location: San Jose

PostPosted: Tue Jul 13, 2010 3:03 pm    Post subject: Reply with quote

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
View user's profile Send private message Send e-mail Visit poster's website
bade_miya
Beginner


Joined: 10 Dec 2003
Posts: 110
Topics: 38

PostPosted: Tue Jul 13, 2010 3:16 pm    Post subject: Reply with quote

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
View user's profile Send private message
Anuj Dhawan
Intermediate


Joined: 19 Jul 2007
Posts: 298
Topics: 7
Location: Mumbai,India

PostPosted: Tue Jul 13, 2010 10:34 pm    Post subject: Reply with quote

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
View user's profile Send private message
bade_miya
Beginner


Joined: 10 Dec 2003
Posts: 110
Topics: 38

PostPosted: Wed Jul 14, 2010 9:56 pm    Post subject: Reply with quote

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
View user's profile Send private message
dbzTHEdinosauer
Supermod


Joined: 20 Oct 2006
Posts: 1411
Topics: 26
Location: germany

PostPosted: Thu Jul 15, 2010 3:01 am    Post subject: Reply with quote

bade miya,

Thank you for returning with the resolution.
_________________
Dick Brenholtz
American living in Varel, Germany
Back to top
View user's profile Send private message
expat
Intermediate


Joined: 01 Mar 2007
Posts: 475
Topics: 9
Location: Welsh Wales

PostPosted: Thu Jul 15, 2010 3:33 am    Post subject: Reply with quote

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
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic   printer-friendly view    MVSFORUMS.com Forum Index -> IMS All times are GMT - 5 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


MVSFORUMS
Powered by phpBB © 2001, 2005 phpBB Group