Joined: 24 Feb 2010 Posts: 3 Location: ShenZhen,China
hi ,
i got a problem when my program CONVERSE(APPC) to AIX. The code as below:
step 1. EXEC CICS ALLOCATE SYSID(XXXX) END-EXEC (not specify the profile)
step 2. EXEC CICS CONNECT PROCESS PROCNAME(XXXX) PROCLENGTH(4) SYNCLEVEL(0) CONVID(XXXX) END-EXEC
step 3. EXEC CONVERSE CONVID(XXXX) FROM(IN-AREA) FROMLENGTH(IN-LEN) INTO(OUT-AREA) TOLENGTH(OUT-LEN) STATE(XXXX) END-EXEC
according to the AIX's log, AIX receive the data at 13:05:44, send back at 13:11:25, and my transaction come back at 13:08:46, it means the data i got from step3 is not sent by AIX. Then i simulate this case in development environment, AIX hold the transaction for 20 minutes when it start, the CONVERSE got the return after 3 minutes.
the result of step3: 'EOC' response & STATE=85(FREE) & TOLENGTH=zero
My question is who set the 3 minutes limit, VTAM or CICS or other?
i have spent one week on it, plz help, thanks in advance.
Joined: 14 Jan 2008 Posts: 2501 Location: Atlanta, Georgia, USA
You should speak with your MVS System Programmer to setup a VTAM Buffer Trace. It should show you where the hangup location is or at least, give you a better idea where the hangup could possibly be happening.
APPC/LU6.2 is inherently half-duplex and the conversations must adhere to this discipline. This is why the correct conversational state is mandatory. If the states are equal, then they are banging their heads together.
Off the top of my head, I would first ensure that the Mode Table Entry is correct and both conversations bind.
Your VTAM System Programmer will be helpful as well, ensuring the definitions are correct. Your AIX administrator should be involved from the RISC/6000 side of the house.
Joined: 24 Feb 2010 Posts: 3 Location: ShenZhen,China
Dear Bill,
thanks very much for your reply.
Bill O'Boyle wrote:
Off the top of my head, I would first ensure that the Mode Table Entry is correct and both conversations bind.
Your VTAM System Programmer will be helpful as well, ensuring the definitions are correct. Your AIX administrator should be involved from the RISC/6000 side of the house.
Mr. Bill
if AIX send back in 3 mins, CICS got the right data and length sent by AIX, once the interval exceed 3 mins, CICS also got the same response and state, but the data are all space and length is zero.
The definition and connection are ok, i have check the RTIMOUT=NO in default profile of the ALLOCATE. Are there any other places for CICS to set the time limit ?
btw, this forum is good. you could learn and tell here. thank you all.
Joined: 06 Jun 2008 Posts: 8696 Location: Dubuque, Iowa, USA
Quote:
if AIX send back in 3 mins, CICS got the right data and length sent by AIX, once the interval exceed 3 mins, CICS also got the same response and state, but the data are all space and length is zero.
The definition and connection are ok, i have check the RTIMOUT=NO in default profile of the ALLOCATE. Are there any other places for CICS to set the time limit ?
This sounds very much like you have decided what the problem is and want an answer that conforms to your problem. If this is the case, why bother anyone on this forum -- just assume whatever answer you want and go from there?
If this were MY problem, I would START by looking into:
- VTAM time out setting on the mainframe
- TCP/IP time out setting on the mainframe
- router time out setting in the network
- switch time out setting in the network
- verifying the APPC connection existed in CICS
BEFORE I ever considered anything with the CICS time out settings. I used to work for a software vendor that sold APPC solutions, and I was involved in installing plenty of them, and while they are slick when they work -- getting them to work can be a royal pain, especially since there are a number of places within most networks where timeout values can have an impact -- and finding the right one (either in the network or on the mainframe) can require some very good tools, or a lot of trial-and-error.