Under normal circumstances, SMARTS attempts to terminate a user program with a descriptive message when an error occurs; however, this is not always possible and an ABEND must be issued to terminate the application in these cases.
This document covers the following topics:
U0000 | U0001 | U0002 | U0003 | U0004 | U0005 | U0006 | U0007 | U0009 | U0010 | U0011
U0000 | — Insufficient Storage |
Explanation |
Insufficient storage is available to obtain a primary control block within the SMARTS environment. A problem occurred at a point where it was not possible to issue a SMARTS error message. A request for storage from the environment failed. |
Action |
Make more storage available to the program running in the environment so that the request can be satisfied. |
U0001 | - Logic Error in SMARTS Nucleus |
Explanation |
An unexpected condition occurred within the nucleus for which a message could not be issued. The ABEND may indicate storage overwrites or earlier errors in the SMARTS environment. |
Action |
If the problem cannot be determined, report the ABEND to your Software AG technical support representative. |
U0002 | - Storage Corrupted | ||||
Explanation |
While freeing storage within the SMARTS nucleus, a corruption failure was detected. When storage is allocated, SMARTS puts a storage accounting prefix at the start of the storage and an identical suffix at the end of the storage. If these do not match when the storage is freed, this ABEND occurs. A mismatch indicates that either
|
||||
Action |
Register 7 will point to the prefix accounting area of the storage. The length of the storage is found at register 7 + 4 (if it hasn't been corrupted), while the storage area itself returned to the user can be found at register 7 + 8. |
U0003 | - SMARTS Not Initialized |
Explanation |
An attempt was made to issue a SMARTS API request in an environment where SMARTS was not initialized. This ABEND occurs in multiuser environments (such as Com-plete or CICS) if SMARTS has not been initialized prior to running a SMARTS-based program. It may occur in a single-user environment, such as batch, if an attempt to dynamically initialize SMARTS fails. |
U0004 | - Invalid SMARTS Main Control Block |
Explanation |
The SMARTS interface stubs found an anchor pointer in the environment where the program is running; however, this anchor pointer points to a control block that is not the main SMARTS control block. This may occur if the incorrect environment-dependent stubs have been linked with the application. |
U0005 | - No SMARTS Context Found |
Explanation |
An attempt to locate the existing SMARTS context or create a new SMARTS context failed. |
Action |
Refer to previously issued messages to determine why this failed. |
U0006 | - ABEND Due to Message Option |
Explanation |
A SMARTS message was issued for which an internal ABEND option was set. |
Action |
Refer to the message and correct the problem causing the message to be issued. |
U0007 | - Invalid Local Storage Stack Area Detected |
Explanation |
During internal entry or exit processing, an invalid internal stack was detected. This indicates storage corruption in the SMARTS environment or an internal error. |
Action |
If there is no evidence of storage corruption, report the error to your Software AG technical support representative. |
U0009 | - User Program Stack Overflow |
Explanation |
An attempt to allocate storage from the user program stack failed as there was insufficient storage available to allocate the space requested. |
Action |
Increase the stack length available to the user program and retry. |
U0010 | - Recursive ABEND During Termination |
Explanation |
An ABEND occurred, which the SMARTS clean-up handlers have trapped; however, during SMARTS clean-up processing, another ABEND occurred. SMARTS has therefore terminated its clean-up cycle to avoid a recursive ABEND situation. It is likely that SMARTS resources will not be cleaned up correctly if this occurs. |
Action |
Determine the cause for both the primary and secondary ABEND and resolve the issues that caused them. This could occur if there were errors in a pthread_cleanup() or atexit() registered user clean-up function. |
U0011 | - Signal Generated ABEND |
Explanation |
A signal occurred for the pthread or process for which no signal handler has been registered. The default action for the signal is to terminate the process, which results in this ABEND. |
The SMARTS server environment may terminate abnormally with any of the following user ABEND codes:
ABEND 4, 7, 9, 10, 11, 13, 14, 15 | ABEND 51
ABEND 4, 7, 9, 10, 11, 13, 14, 15 | |
Explanation |
These ABEND codes indicate unexpected errors in the processing of the SMARTS server environment savearea pool. |
Action |
Save all related documentation including dumps and logs. Contact your Software AG technical support representative. |
ABEND 51 | |
Explanation |
An unexpected error occurred during processing of an error message. |
Action |
Save all related documentation including dumps and logs. Contact your Software AG technical support representative. |