View previous topic :: View next topic
|
Author |
Message |
mushreyas
New User
Joined: 18 Jul 2008 Posts: 59 Location: Bangalore
|
|
|
|
Hi,
I increased the size of a copybook as per the requirement. Due to this increase the size of copybook became 29MB approx. Initially it was 8MB approx. After this change my program is abending with AICA abend code while trying to execute INITIALIZE statement on this copybook.
I have compiled the program with AMODE=31 and RMODE=ANY.
Can you please let me know what the problem ? If i comment out this INITIALIZE statment then the program goes fine.
Thanks. |
|
Back to top |
|
|
Robert Sample
Global Moderator
Joined: 06 Jun 2008 Posts: 8696 Location: Dubuque, Iowa, USA
|
|
|
|
1. An 8 MB WORKING-STORAGE section in a CICS program is drastically misusing CICS, which should only be handling small amounts of work (transactions) instead of large amounts of work (batches). Going from 8 MB to 29 MB only increases the insanity.
2. CICS has internal timer limits to indicate that a program is looping. It appears your code is now exceeding one of those limits.
3. You can reduce the size of the WORKING-STORAGE section, or you can stop attempting to use INITIALIZE, or you can expect the AICA abends to continue. |
|
Back to top |
|
|
Bill Woodger
Moderator Emeritus
Joined: 09 Mar 2011 Posts: 7309 Location: Inside the Matrix
|
|
|
|
What is the purpose of the INITIALIZE in you case? Can you post something representative of your table?
Many, many times I have seen INITIALIZE followed by putting actual data into all the fields of the record. In such circumstances the INITIALIZE is a total waste.
If you are not accumulating values in a Cobol structure, then I see little point in using INITIALIZE.
There is a good chance that your program will work the same, and faster. As Robert has also pointed out, excessive amounts of storage for a CICS program is not such a hot idea anyway. |
|
Back to top |
|
|
|