View previous topic :: View next topic
|
Author |
Message |
Art Evans
New User
Joined: 10 Aug 2012 Posts: 1 Location: US
|
|
|
|
We have a background CICS transaction that is sporadically getting LE user abend 4094. The CICS log indicates return code 00018. Does anyone know how to locate the storage that LE is indicating has been overlaid? |
|
Back to top |
|
|
Pandora-Box
Global Moderator
Joined: 07 Sep 2006 Posts: 1592 Location: Andromeda Galaxy
|
|
|
|
Are you sure 4094 is the abend? |
|
Back to top |
|
|
dick scherrer
Moderator Emeritus
Joined: 23 Nov 2006 Posts: 19244 Location: Inside the Matrix
|
|
|
|
Hello and welcome to the forum,
It is quite likely that there is a different "real" problem that leads to the U4094.
Look in your code for an array that gets written beyond the end of the array. Or some data that arrives longer than the expected length. |
|
Back to top |
|
|
Peter cobolskolan
Active User
Joined: 06 Feb 2012 Posts: 104 Location: Sweden
|
|
|
|
Tip: Compiler option SSRANGE will make it easier to solve such a problem, because the compiler generates code to check if subscript/index is valid. |
|
Back to top |
|
|
Bill O'Boyle
CICS Moderator
Joined: 14 Jan 2008 Posts: 2501 Location: Atlanta, Georgia, USA
|
|
|
|
Also, the LE option CHECK(ON) must be set. Because you might have an AMODE issue, set option ALL31(OFF).
If it's an index/subscript out of range, it's easy enough to calculate the max value/hibound in program housekeeping and use this as the max-hibound throughout the logic. Hard-coded max-hibounds can then be eliminated. |
|
Back to top |
|
|
|