Nucleus Response Codes

This document describes the response codes which can be output by the Adabas nucleus.

The following response codes are returned if errors occur while processing Adabas commands:

Overview of Messages

RESPONSE 0 | RESPONSE 1 | RESPONSE 2 | RESPONSE 3 | RESPONSE 9 | RESPONSE 16 | RESPONSE 17 | RESPONSE 18 | RESPONSE 19 | RESPONSE 20 | RESPONSE 21 | RESPONSE 22 | RESPONSE 23 | RESPONSE 24 | RESPONSE 25 | RESPONSE 26 | RESPONSE 28 | RESPONSE 29 | RESPONSE 40 | RESPONSE 41 | RESPONSE 43 | RESPONSE 44 | RESPONSE 45 | RESPONSE 46 | RESPONSE 47 | RESPONSE 48 | RESPONSE 49 | RESPONSE 50 | RESPONSE 51 | RESPONSE 52 | RESPONSE 53 | RESPONSE 54 | RESPONSE 55 | RESPONSE 56 | RESPONSE 57 | RESPONSE 60 | RESPONSE 61 | RESPONSE 62 | RESPONSE 63 | RESPONSE 72 | RESPONSE 73 | RESPONSE 74 | RESPONSE 75 | RESPONSE 76 | RESPONSE 77 | RESPONSE 78 | RESPONSE 79 | RESPONSE 83 | RESPONSE 85 | RESPONSE 86 | RESPONSE 87 | RESPONSE 88 | RESPONSE 98 | RESPONSE 99 | RESPONSE 113 | RESPONSE 114 | RESPONSE 132 | RESPONSE 144 | RESPONSE 145 | RESPONSE 146 | RESPONSE 147 | RESPONSE 148 | RESPONSE 149 | RESPONSE 150 | RESPONSE 151 | RESPONSE 152 | RESPONSE 153 | RESPONSE 154 | RESPONSE 162 | RESPONSE 165 | RESPONSE 166 | RESPONSE 167 | RESPONSE 170 | RESPONSE 172 | RESPONSE 173 | RESPONSE 176 | RESPONSE 177 | RESPONSE 182 | RESPONSE 196 | RESPONSE 200 | RESPONSE 201 | RESPONSE 202 | RESPONSE 204 | RESPONSE 210 | RESPONSE 211 | RESPONSE 212 | RESPONSE 215 | RESPONSE 224 | RESPONSE 230 | RESPONSE 241 | RESPONSE 242 | RESPONSE 243 | RESPONSE 245 | RESPONSE 246 | RESPONSE 247 | RESPONSE 250 | RESPONSE 251 | RESPONSE 252 | RESPONSE 253 | RESPONSE 255

RESPONSE 0
Explanation

Normal response.


RESPONSE 1
Explanation

An ISN list could not be sorted as a result of an excessive number of resulting ISNs, or because during a non-descriptor search a value larger than the corresponding field length in the FDT was found, or because the ISN quantity returned does not correspond with the actual number of records found.

For an S9 command, this response indicates that there is no space available for additional temporary working space. For an S2 command, this response is only a warning and the S2 becomes an S1.

Action

Provide sufficient disk space for temporary working space or adapt the FDT to the real field length.


RESPONSE 2
Explanation

The required function has not been executed completely. For an OP command with command option 2 = E or for an RE command, the specified record buffer length was shorter than the length of the ET data read. The record buffer has been truncated.

For an A1//N1/N2 command, a descriptor value with the TR option is larger than 1144 bytes. In this case, only the first 1144 bytes are stored in the index. Search operations for truncated values may be inexact since only the first 1144 bytes are evaluated. The first 2 bytes of the Additions 2 field contain the number of descriptor values truncated, the 3rd and 4th bytes contain the field name of the descriptor value that is truncated.

For an S1/S2/S4/S9 command, the resulting ISN list may not represent the exact result: this is because the search values and the values in the database were truncated after 1144 bytes during the search operation of an S1/S2/S4 command and during the sort operation of an S2/S9 command.

Action

For an OP or RE command, increase the record buffer length or ignore the warning.

For an S1/S2/S4/S9 command, either perform a post-selection using the complete field values, perform your own sort operation using the complete field values, or ignore the warning.


RESPONSE 3
Explanation

An end-of-file or end-of-list condition was detected.


RESPONSE 9
Explanation

This response is caused by one of the following:

  • The last user transaction has been backed out by Adabas (ET logic users only) or an exclusive control user (non-ET user) or an access-only user exceeded the Non-Activity Time Limit;

  • The user session was abnormally terminated by the operator and the user issued a command;

  • The protection log area (= WORK container) was too small and an internal BT was executed.

The ADDITIONS 2 field in the control block contains additional information:

First two bytes Third and fourth bytes Explanation
0 TT

Transaction timeout

1 TN

Non-activity timeout

2 ST

STOP user

3 LP

WORK overflow

5 SE

Security

6 DL

Deadlock

8 OP

Open transaction

9 OR

Open required

10 RR

Replication recording failed

One of the internal Adabas commands issued for replication recording got an unexpected response code, for example 77. This response code is included in the control block in the field ACBXSUBR (only if you use the ACBX interface) and displayed in an RPLIRSP message in the nucleus log.

The information in the first two bytes is represented as an integer, and the third and fourth bytes are alphanumeric.

Action

Check the appropriate reason. If the Adabas nucleus was started without the option OPEN_REQUIRED, and the reason for response 9 was a non-activity timeout or a STOP user, users who started their sessions with an OP command must re-issue their OP command under the following circumstances:

  • if they set a User ID

  • if they specified restricted file lists

  • if they had user-specific timeout values

  • if they were not ET users.

If too many transactions are backed out because of a WORK overflow, the size of the WORK container should be increased.

If transactions are backed out because of security errors, a security violation has occurred.

  • Check and correct the Adabas Security password.

  • Ensure that the contents of the security buffer are not modified.

  • Ensure that the user credentials are not modified during an active session.


RESPONSE 16
Explanation

An error occurred in an MC call during subcommand processing. The error code and additional information can be found in the control block of the subcommand. The first 2 bytes of the Additions 2 field contain the number of the subcommand in binary format. The third and fourth bytes of the Additions 2 field contain the offset of the subcommand's control block in the MC call's record buffer in binary format. All subcommands before the one that failed were executed.

Action

Correct the failed subcommand if necessary and re-issue the subcommands beginning with the one that had failed.


RESPONSE 17
Explanation

Invalid file number. The value in the two rightmost bytes of the Additions 2 field indicates the reason (2 byte binary format):

  • value=2: Unauthorized system file access;

  • value=4: The file number was equal to 0 or greater than the maximum value allowed;

  • value=5: The file was not loaded;

  • value=6: File to be created already exists;

  • value=8: An ET user with a restricted file list and ACC = file number attempted to issue a UPD command, or a user with a restricted file list attempted to touch a file that is not in the file list;

  • value=14: A LOB file was accessed instead of the associated base file;

  • value=16: The file was locked by ADAOPR;

  • value=21: A 2-byte file number was used against a lower version database that does not support large file numbers;

  • value=22: Invalid (corrupted) FCB.


RESPONSE 18
Explanation

Invalid file number usage. The file number was modified between successive Lx and Sx calls.

Action

Correct the file number.


RESPONSE 19
Explanation

An attempt was made to update a file which is either already open for read access or can only be opened for read access.

Action

none


RESPONSE 20
Explanation

One of the following invalid values was used for a command ID value:

  • Binary zeros;

  • Blanks;

  • The high order byte contains the hexadecimal value FF, but there is no automatic command ID generation;

  • The three high order bytes contain the ASCII string `SYN'.

Action

Correct the command ID.


RESPONSE 21
Explanation

An invalid command ID was detected. The value in the first two bytes of the Additions 2 field indicates the reason (2 byte binary format):

  • value=1: The command ID specified with the GET NEXT option of an L1/L4 command was not found, or the command ID was not found and an L3/L6 call was not an initial call;

  • value=3: The command ID specified for an L3/L6 command was assigned to another Lx command, or the command ID specified for an L9 command was assigned to another Lx command;

  • value=4: The format buffer with the command ID used by an Lx command was created by an L9 command and is incompatible;

  • value=5: The format buffer with the command ID used by an L9 command was created by an Lx command and is incompatible.

  • value=6: The command ID value specified for an S8 command was not found;

  • value=8: The ISN list identified by the command ID value specified for an S8 command was not in ISN sequence.

Action

Correct the command ID.


RESPONSE 22
Explanation

Invalid command code or command option. The value in the third and fourth bytes of the Additions 2 field indicates the reason (2 byte binary format); in the case of ACBX calls, the value is also stored in the ACBXERRC field.

  • value=1: an invalid command code was detected;

  • value=2: an update command was issued by an access-only user;

  • value=3: an update command was issued for a read-only database session;

  • value=4: a privileged command was issued without a previous OP command;

  • value=5: the command was not valid for a non-privileged user;

  • value=6: the command was rejected by user exit 1. In this case, the first 2 bytes of the Additions 2 field contain the response code of the user exit;

  • value=15: an L1/L4 command with the multifetch option was not combined with the I or N option;

  • value=19: an ET or BT with command option 'S' was issued without subtransactions being enabled for the current Adabas user session by specifying command option 'S' in the OP command;

  • value=21: a BT command was issued by a non-ET logic user;

  • value=22: the command is not allowed within an MC sequence;

  • value=23: the last MC subcommand is not ET;

  • value=24: an ET or CL command with user data is not allowed for read-only access to a database;

  • value=33: the command option 'S' is not allowed for an S9 command with a non-blank Additions 4 field;

  • value=34: the command was rejected by user exit 11;

  • value=35: the command cannot be executed with the nucleus parameter NT=1;

  • value=36: the descending option 'D' is not allowed for the command;

  • value=37: a shared hold status request (command option 3 is set to 'C', 'Q', or 'S') is not allowed for a non-ET user.

  • value=38: a shared hold status request for a sequential read command (command option 3 is set to 'Q') is not allowed for an L4 command without the 'N' option, nor is it allowed for an S4 command without a command ID (CID) or with an ISN buffer length other than 4 bytes;

  • value=39: a shared hold status request for a sequential read command (command option 3 is set to 'Q') is not allowed for a command with a multifetch (command option 1 is set to 'M' or 'O');

  • value=40: a keep-in-shared-hold-status request (with command option 3 set to 'H') is not allowed for an ET or BT command with multifetch (command option 1 is set to 'M');

  • value=41: request to read the next portion of a LOB value (command option 2 is set to 'L') is not allowed for an L1/L4 command with multifetch (command option 1 is set to 'M' or 'O');

  • value=42: for an A1 command with command option 2 = 'T', the current time is still the same as the value of the field with SY=TIME in the database.

Action

Correct the command code or the command option or the previous OP command.


RESPONSE 23
Explanation

Invalid starting ISN specified for an L2/L5 command sequence:

  • ISN not assigned to a record in the file;

  • ISN was larger than the MAXISN in effect for the file.

Action

Correct the ISN.


RESPONSE 24
Explanation

An ISN = 0 or >= the first free ISN was found in the ISN buffer. The Additions 2 field contains the value of the invalid ISN in 4 byte binary format.

Action

Correct the ISN buffer.


RESPONSE 25
Explanation

The ISN specified in ISN LOWER LIMIT for a subsequent S1/S4 or S2/S9 command was not found.

Action

Correct the ISN lower limit.


RESPONSE 26
Explanation

Invalid ISN buffer length for an S9 command. The number of ISNs to be sorted as given in ISN quantity was equal to 0.


RESPONSE 28
Explanation

The first two bytes of the Additions 1 field contained an invalid descriptor for an L3/L6/L9 or S2/S9 command. The value in the first and second bytes of the Additions 2 field indicates the reason (2 byte binary format):

  • value=1: the field was not a descriptor;

  • value=2: the use of the descriptor is not supported, e.g. phonetic descriptor;

  • value=3: the descriptor was changed between successive calls.

  • value=4: there is a mismatch of the descriptor names in the Additions 1 field and the search buffer;

  • value=5: an initial L3 or L6 call contains no trailing blanks in the Additions 1 field.

Action

Correct the Additions 1 field.


RESPONSE 29
Explanation

L3/L6 command; a value repositioning was attempted (bytes 3-8 of the Additions 1 field contain spaces) and the Command Option 2 field did not contain the value A, D or V.

Action

Correct the Additions 1 or Command Option 2 field.


RESPONSE 40
Explanation

A syntax error was detected in the format buffer:

  • The terminating period was missing;

  • The first position contains a period, this only applies to N1 or N2 commands;

  • Length and/or format specified with a range definition;

  • An invalid element was detected;

  • A field segment notation was not correct: it must be specified either as '(byte-number,length)' or as '(byte-number,length,length-2)', where byte-number must be either '*' or a decimal number, and length and length-2 are decimal numbers. These numbers must be less than 2,147,483,648;

  • A field segment notation was specified for a range of MU fields or for a range of fields within a periodic group.

The following information will be returned in the Additions 2 field of the control block:

  • The first two bytes will contain the number of the byte (in binary format) relative to the beginning of the format buffer where the error was detected;

  • The third and fourth bytes will contain the name of the field being processed when the error was detected.

Action

Correct the format buffer.


RESPONSE 41
Explanation

An error was detected in the format buffer:

  • The field name specified is reserved for edit mask usage;

  • An index was equal to 0;

  • A length specified or taken from the FDT standard length is greater than the maximum length of the required format;

  • nnnX was specified with nnn greater than 253;

  • A literal with more than 253 characters was specified;

  • Only for Adabas versions < 5.1: a subdescriptor or superdescriptor with MU or PE parent field, phonetic descriptor, hyperdescriptor or a collation descriptor was specified;

  • A phonetic descriptor, hyperdescriptor or collation descriptor was specified;

  • A field specified was not present in the file;

  • A periodic group name appears without an index;

  • A length and/or format was used with a group notation;

  • A field in a periodic group was specified without an index;

  • A range notation with a group name or a multiple-value field as the first or last element was specified;

  • A reference was made to the count of a multiple-value field contained in a periodic group, and no index was included to indicate the periodic group occurrence for which the count was to be returned;

  • A collation descriptor with the option HE was specified for an L9 command.

  • A count specification was made for a field which was neither a multiple-value field nor was contained within a periodic group;

  • A count for a non-multiple value field within a periodic group was specified;

  • A length and/or format specification was used with a periodic group notation;

  • A (regular or periodic) group containing a multiple-value field was specified;

  • Invalid index usage;

  • A descending index range was specified;

  • A double index was used for a non-periodic field;

  • A multiple-value field with an index specification and a multiple-value field without an index specification were used;

  • A value cannot be converted to the required format (READ command) or converted to the FDT standard format (UPDATE command);

  • The S element was applied to a field that does not have the NC option;

  • A field with the NC option was used more than once together with its S element;

  • The add option is not compatible with the format/length;

  • The specification of a character set was invalid;

  • A field was specified with an edit mask not allowed for the field;

  • A field segment notation '(byte-number,length)' or '(byte-number,length,length-2)' was not correct: byte-number + length must be less than or equal to the maximum value length + 1, and length-2 must be equal to length. The maximum value for LB fields is 2,147,483,643, for LA fields 16381, an for other values 253 bytes;

  • Segment notation is only allowed for values with the format 'A'.

The following information is returned in the Additions 2 field of the control block:

  • The first two bytes will contain the number of the byte (in binary format) relative to the beginning of the format buffer where the error was detected;

  • The third and fourth bytes will contain the name of the field being processed when the error was detected.

Action

Correct the format buffer.


RESPONSE 43
Explanation

L9 command; the descriptor specified in the format buffer did not agree with the descriptor specified in the search buffer.

Action

Correct the format buffer or the search buffer.


RESPONSE 44
Explanation

One of the following situations occurred:

Subcode Meaning
1
  • The format buffer is invalid for use with an UPDATE command (A1), ADD command (N1/N2):

    • Format buffer contains overlapping fields, e.g., GL1-3, GL2-4.;

    • Format buffer contains an 1-N element, e.g., GL1-N.;

    • There is not a 1:1 relation between an L element and the subsequent corresponding element with '*' length;

  • A READ command uses a format buffer from the format pool, which was previously used by update or add command, and which contains an invalid conversion.

12 L option specified but the format has no LOB section with *-position.
13 The format buffer for an A1 commands with command option 2='T' did not contain a last-update-timestamp system generated field.

Note:
Subcodes associated with response 44 are stored in the first two bytes of the Additions 2 field (ACB) and in the error subcode field (ACBX).

Action

Correct the format buffer or use a different command ID for Read/Update commands.


RESPONSE 45
Explanation

Multiple field or periodic group overflowed when using the N suffix in the format buffer for update.

The following information is returned in the Additions 2 field of the control block:

  • The first two bytes will contain the number of the byte (in binary format) relative to the beginning of the record where the error was detected;

  • The third and fourth bytes will contain the name of the field being processed when the error was detected.

Action

Because the multiple field or periodic group reached its absolute limit, the application must be re-designed.


RESPONSE 46
Explanation

Mismatch of format buffer usage for the supplied command ID.

  • A command ID of global ID format buffer has been found in the format pool and has a different file number to the file supplied by the caller;

  • The file number was changed in subsequent Adabas calls with the same normal or global command ID.

Action

Check the usage of the command IDs.


RESPONSE 47
Explanation

The maximum value for the NISNHQ parameter has been exceeded.

Action

Increase the value of the NISNHQ parameter by:

  • modifying its value in the nucleus startup file, or

  • using ADAOPR


RESPONSE 48
Explanation

The requested database operation is not allowed. The value in the third and fourth bytes of the Additions 2 field indicates the reason (2 byte binary format):

  • value=2: the requested usage of the specified file conflicts with the current usage of the file by another user or Adabas utility;

  • value=8: The user ID provided in the OP command is already assigned to another user;

  • value=11: a non-privileged user issued an OP command to a nucleus that is in "Utilities only" status;

  • value=17: the data of a specified file is not accessible. This can happen if a utility aborts or an autorestart fails;

  • value=18: the index of the specified file is not accessible. This can happen if a utility aborts or if the index has been disabled by ADAREC REGENERATE or an autorestart.

The corresponding file number is returned in the first two bytes of the Additions 2 field in binary format except for value 8 in the third and fourth byte. The value 0 means the whole database.

Action

The following user actions are possible:

  • Wait for the other user or utility to finish, then retry;

  • Make the file available for all users (if value 16 occurred in bytes 3 and 4);

  • Restore or unlock the file (if value 17 occurred in bytes 3 and 4);

  • Rebuild the file's index (if value 18 occurred in bytes 3 and 4);

  • If the value in bytes 3 and 4 of the Additions 2 field is 8, and the nucleus was started with the OPEN_REQUIRED option, the user can re-issue the OP command immediately. This will cause the other user with the same user ID to be stopped, unless that user is currently active.

  • If a utility receives a response 48 because non-utility users are still active, you can lock the file with ADAOPR LOCK. This ADAOPR command stops all non-utility users from accessing the file and allows only utility users to access the file until it is unlocked again.


RESPONSE 49
Explanation

The compressed record was too long for the Data Storage disk device. The first two bytes of the Additions 2 field contain the length of the compressed record in binary format.

Action

Add a new DATA extent with sufficient block size (block size >= compressed record size + 8). Alternatively you can start the nucleus with OPTIONS=AUTO_EXPAND; then the Adabas nucleus automatically creates a new DATA extent with sufficient block size.


RESPONSE 50
Explanation

A syntax error in the record buffer was detected during processing of an OP command, or an invalid character set has been specified, or an invalid time zone has been specified. The first two bytes of the Additions 2 field contain the number of bytes (in binary format) relative to the beginning of the record buffer where the error was detected.

If a time zone problem occurs, the two right-most bytes of the Additions 2 field in the ACB will contain a subcode; in an ACBX, the Error Subcode field will contain the subcode:

Subcode Meaning
31 The specified time zone was not found in the ADATZDIR directory. Verify that the time zone was specified correctly. If it was, contact your Software AG technical support representative for further assistance.
32 The time zone pool is full. Contact your Software AG technical support representative for further assistance.
Action

Correct the record buffer and try again.


RESPONSE 51
Explanation

An error was detected in the record buffer while processing an OP command. One of the keywords EXU, UPD, ACC or WCHARSET is duplicated.

  The following information is returned in the Additions 2 field of the control block:
  • the first two bytes contain the number of bytes (in binary format) relative to the beginning of the record buffer where the error was detected;

  • the third and fourth bytes contain the open mode that failed (ACC =1, UPD = 2, EXU = 4, WCHARSET = 128)

Action

Correct the record buffer.


RESPONSE 52
Explanation

An error occurred while processing the record or value buffer:

  • The value of a G format field was not in floating point format;

  • The value of a P format field was not in packed decimal format;

  • The value of a U format field was not in unpacked decimal format;

  • A variable-length field was specified without a length parameter;

  • The SQL null value indicator (S element) has a value of less than -1;

  • A field with the NN option is forced to take the SQL null value;

  • The resulting value exceeds 4 bytes (longword) if the format is F, or exceeds the maximum (format dependant) length;

  • No record with the specified ADAM key was found.

The following information is returned in the Additions 2 field of the control block:

  • The first two bytes contain the number of the byte (in binary format) relative to the beginning of the record/value buffer where the error was detected. This value is -1 if a field with the NN option is forced to take the SQL null value.;

  • The third and fourth bytes contain the name of the field being processed when the error was detected.

Action

Correct the format/record/value buffer.


RESPONSE 53
Explanation

The record buffer was too small, or the ISN buffer was too small for a requested multifetch command. The following information is returned in the Additions 2 field of the control block:

  • The first two bytes contain the expected buffer size in binary format. This value is -1 if the command would have exceeded the maximum record size.

  • The third and fourth bytes contain the name of the buffer that was too small. ("RB" or "IB"). If the error occurred while using a hyperexit, the name of the hyperexit is stored here.

Action

Increase the record buffer size, or (for multifetch) the ISN buffer size.


RESPONSE 54
Explanation

The record buffer was too long (C5 or ET command).

Action

Reduce the record buffer size, the maximum is 2000 bytes.


RESPONSE 55
Explanation

Format, length conversion or truncation error occurred while processing field values in the record buffer or value buffer.

  • The value for an FI field is too long;

  • The resulting value exceeds the border of the FI field;

  • Truncation error of numeric field;

  • Truncation of alphanumeric fields or truncation of numeric fields which are converted to alphanumeric, except when OPTIONS=TRUNCATION is enabled in ADANUC;

  • A value defined without LA or L4 option with variable length is larger than 253 bytes. This may happen for Unicode fields after conversion to another encoding.

  • The length specified for a Unicode field for a character set with fixed character length is not a multiple of the character length: in particular, the length for UTF-16 based character sets must be a multiple of 2, and the length for UTF-32 based character sets must be a multiple of 4;

  • The specified value is not a valid date/time value;

  • The field does not contain a valid date/time value. This can happen if the value was stored without a date/time edit mask;

  • A date/time field with option TZ was specified in the format or search buffer, but there was no time zone specified in an OP command for the current Adabas user session;

  • The attempted format conversion was not possible due to incompatible data formats or other compatibility problems.

The following information is returned in the first 2 bytes of the Addition 2 field, and in the case of an ACBX, also in the field ACBXERRC:

Subcode Meaning
0 Conversion error.
1 Truncation error.
2 Internal structure error.
5 Internal error.
20 Unsupported DATETIME conversion.
21 Date/time value outside valid range. The valid range depends on the date-time edit masks being used in the format or search buffer and the FDT.
22 Date/time value specified in gap when switching from standard time to daylight saving time.
24 Month not between 1 and 12.
25 Day not between 1 and n, where n is the number of days of the month specified.
26 Hours not between 0 and 24.
27 Minutes not between 0 and 59.
28 Seconds not between 0 and 59.
30 Internal error: missing time zone element for conversion with time zone.
31 Invalid daylight saving offset given (fldD) for date/time and time zone.

The field name is returned in the third and fourth byte of the Additions 2 field, and in the case of an ACBX in the field ACBXERRB.

In addition, the following information is returned in the case of an ACBX call:

  • The offset in the record or value buffer in ACBXERRA;

  • The type of buffer in ACBXERRD (‘R’ for error in record buffer, ‘V’ for error in value buffer).

Action

Depending on the reason:

  • Correct the format, record, search or value buffer;

  • If a record structure error is indicated, run ADAVFY FIELD against the corresponding file. If this produces errors, then the file must be unloaded, decompressed, re-compressed and re-loaded;

  • If the time zone specification in the OP command is missing, execute an appropriate OP command;

  • Subcodes 2 and 5 should never occur; you should, therefore, contact your nearest support centre if you receive one of these subcodes. A copy of the command log and an export copy or backup of the files accessed will help us to analyze the problem.


RESPONSE 56
Explanation

The descriptor value is too large. Descriptor values are limited to 1144 bytes

Action

Store a shorter value, or specify the TR option for the descriptor, which truncates larger descriptor values before they are stored in the index. Note that with the TR option, search results may be inaccurate: this is because values that are identical in the first 1144 bytes are considered to be equal to each other.


RESPONSE 57
Explanation

L9 command; the descriptor specified in the search buffer was invalid:

  • The field name specified is not the name of a descriptor;

  • The descriptor specified is a phonetic descriptor;

  • The descriptor specified is a collation descriptor with the option HE.

Action

Correct the search buffer.


RESPONSE 60
Explanation

A syntax error was detected in the search buffer.

  The following information will be returned in the Additions 2 field of the control block:
  • The first two bytes will contain the number of the byte (in binary format) relative to the beginning of the search buffer where the error was detected;

  • The third and fourth bytes will contain the name of the field being processed when the error was detected.

Action

Correct the search buffer.


RESPONSE 61
Explanation

An error was detected in the search buffer or value buffer, or during an S8 command:

  • Invalid command option 2 specified for ISN LIST processing (S8 command);

  • Invalid element or element order;

  • The specified field was neither a descriptor, subdescriptor, superdescriptor nor a phonetic descriptor;

  • Invalid connection of partial criteria and/or different indices used for a descriptor contained within a periodic group;

  • Invalid use of a phonetic descriptor;

  • Invalid periodic group index;

  • Invalid index usage;

  • The length of a descriptor value was greater than 253 or greater than the permitted length for the required format;

  • Invalid format type;

  • Invalid file number specification;

  • Invalid usage of the S operator - FROM value greater than TO value;

  • Invalid usage of the N operator - BUT NOT value was outside the range of the preceding FROM-TO range;

  • Invalid comparator;

  • The value in the value buffer cannot be converted into the field's FDT format;

  • The specified file name is not an ADAM key while using the V option with an A1 or E1 command;

  • Invalid value given in the value buffer while using the V option with the A1 or E1 command;

  • Invalid usage of the C option - only allowed for collation descriptors;

  • A field was specified with an edit mask that is not allowed for the field.

The following information is returned in the Additions 2 field of the control block (not for the S8 command):

  • The first two bytes will contain the number of the byte (in binary format) relative to the beginning of the search buffer where the error was detected;

  • If the third byte is zero, the fourth byte contains more information about the error:

    • Fourth byte 1: invalid length.

    Otherwise the third and fourth bytes will contain the name of the field being processed when the error was detected.

Action

Correct the search/value buffer.


RESPONSE 62
Explanation

The length of the search and/or value buffers as specified in the search and value buffer length fields, respectively, was not of sufficient length to accommodate the search criteria specified.

Action

Correct the search/value buffer.


RESPONSE 63
Explanation

An invalid command ID was used in the search buffer. The value in the first two bytes of the Additions 2 field indicates the reason (2 byte binary format):

  • value=1: The command ID value specified in the search buffer was not found;

  • value=2: The associated ISN list is not sorted in ISN sequence (it has been generated by an S2/S9 command);

  • value=3: The command ID was not used in the previous FIND in which the SAVE ISN LIST option was used.

Action

Check the command ID in the search buffer.


RESPONSE 72
Explanation

An overflow occurred in the user queue.

Action

The DBA may increase the value of the NU parameter.


RESPONSE 73
Explanation

There is no space available in the temporary working space in which resulting ISN lists are stored. Please note that for read-only databases, temporary working space is only created if a location for it is explicitly specified (environment variable TEMPLOCn or entries for TEMPORARY_LOCATION in the file DBnnn.INI), otherwise only some of the space in the Adabas buffer pool is used for storing the ISN lists.

Action

Provide enough temporary working space. For read-only databases, specify the location for the temporary working space explicitly or increase the size of the Adabas buffer pool (ADANUC parameter LBP).

Note:
The processing of ISN lists was changed for Adabas Version 5.1. If you get this error with an Adabas Version 3 database, please refer to the Adabas Version 3 documentation.


RESPONSE 74
Explanation

No space was available on the WORK data set for complex FIND commands.

Action

Increase the size of the WORK data set.


RESPONSE 75
Explanation

An additional Associator or Data Storage extent was required for a file and the maximum number of extents in the FCB had already been allocated. The last extent is allocated only for a command which is being backed out and for AUTORESTART and ADAREC REGENERATE. The first two bytes of the Additions 2 field contain the highest possible extent number (in binary format). The third and fourth bytes indicate where the overflow occurred. Possible values are: "DS" (Data Storage), "AC" (Address Converter), "NI" (Normal Index) and "UI" (Upper Index).

Action

Unload the file and reload it with appropriate initial allocations.


RESPONSE 76
Explanation

An overflow occurred in an inverted list index.

Action

Unload/reload the file with an appropriate padding factor for the Associator.


RESPONSE 77
Explanation

Sufficient space was not available for a required Associator or Data Storage extent. In this case, the third and fourth bytes of the Additions 2 field contain either "AS" (Associator) or "DS" (Data Storage). You can also get the response 77 if you specified an explicit RABN for an Associator or Data Storage extent, and the requested space is not available at the requested RABN.

Please note that Adabas distinguishes between small (< 16KB) and large (>= 16KB) index blocks. This means that a response 77 can be returned even though there are enough free Associator blocks, but the free Associator blocks have the wrong size.

Action

Add a new ASSO/DATA extent to the database with ADADBM, or specify a RABN where the requested space is available.

Note:
Response 77 can sometimes be prevented by enabling database auto expand to execute in the online mode (specify the nucleus parameter OPTIONS=AUTO_EXPAND).


RESPONSE 78
Explanation

An overflow occurred in the free space table (FST) as a result of ASSO/DATA fragmentation, or the maximum number of DSST extents has already been allocated.

Action

If it is an FST problem, reorder the database. If it is a DSST problem, which can only occur in the context of a utility, refer to the message DSSTALL for further information.


RESPONSE 79
Explanation

Hyperexit could not be loaded by the nucleus.

  The following information is returned in the Additions 2 field of the control block:
  • The first two bytes contain the number of the hyperexit;

  • The third and fourth bytes contain the name of the hyperdescriptor.

Action

Create or recompile the hyperexit and restart the nucleus.


RESPONSE 83
Explanation

A hyperexit routine returned an invalid ISN.

The following information will be returned in the Additions 2 field of the control block:

  • The first two bytes contain the offset the invalid ISN in the specified ISN buffer in binary format;

  • The third and fourth bytes contain the name of the hyperdescriptor.

Action

Correct the hyperexit routine and restart the nucleus.


RESPONSE 85
Explanation

An error occurred on an update command: either the required space for the descriptor value table could not be allocated or a descriptor with L4/LA option set exceeds 1144 bytes in length.

Action

Reduce the resulting length of a descriptor with L4/LA option set or make use of the TR option.

If that does not apply contact your nearest support centre.


RESPONSE 86
Explanation

A hyperdescriptor exit return error occurred for one of the following reasons:

  • An incorrect sign for a packed descriptor value was created;

  • A value with an incorrect length byte was returned;

  • The ISN was changed by an UPDATE command.

The following information is returned in the Additions 2 field of the control block:

  • The first two bytes contain a value. This value can be:

    1 the hyperdescriptor pool exceeds the nucleus buffer pool
    2 the hyperexit has returned an invalid pointer, length or count value
    3 an element in the user-defined format buffer is not a parent field of the hyperdescriptor
    4 - 255 Adabas response code
    >255 user-defined error return for hyperexit routine
  • The third and fourth bytes contain the name of the hyperdescriptor or the name of the parent field.


RESPONSE 87
Explanation

An error occurred when creating a collation descriptor key value. This can have the following reasons:

  • The value, for which you try to create the collation descriptor key value, is invalid.

  • You have created a collation descriptor with a different Adabas version using an ICU version that is not supported by the current Adabas version.

    For example, collation descriptors in Adabas version 6.5 are created using ICU version 5.4. If you convert the database back to Adabas version 6.4, and you perform an Adabas command where a value for such a collation descriptor is created, you get response 87, because Adabas version 6.4 supports only ICU version 3.2, but not ICU version 5.4.

Action
  • Specify valid values for the creation of the collation descriptor key.

  • To avoid errors caused by an ICU version not supported by the current Adabas version, the collation descriptors created with this ICU version must be reinverted after changing the Adabas version.

Note:
On mainframe databases, response 87 has a different meaning.


RESPONSE 88
Explanation

Sufficient work pool space was not available, or the sort work space was too small although only one user was active.

Action

Parameter values relating to working storage allocation should be verified. Ask the DBA to increase the value of the LWP or LS parameter.


RESPONSE 98
Explanation

Uniqueness violation of unique descriptor detected during store/update if subtransactions are not activated, or otherwise at end of subtransaction. The third and fourth bytes of the Additions 2 field contain the name of the descriptor which caused the uniqueness conflict.

Action

Check the descriptor values.


RESPONSE 99
Explanation

An I/O error occurred. The first 2 bytes of the Additions 2 field ( in binary format) contain the extent number. The third and fourth bytes contain the container type ("AS" for ASSO, or "DS" for DATA or "WO" for WORK).

Action

Check whether any disk devices have gone offline or check the error log for hardware errors.


RESPONSE 113
Explanation

The specified ISN was invalid:

  • HI command was issued with ISN equal to 0;

  • N2 command was issued with ISN equal to 0 or larger than the MAXISN in effect for the file;

  • N2 command was issued and the specified ISN was assigned to another record in the file;

  • L1/L4, E1, A1 or S1/S2/S4 (with FB) command was issued for a non-existent ISN;

  • L3/L6 command found an ISN in the index which did not exist in the Address Converter;

  • RI command was issued for a record that has been updated in the current transaction.

Action

Correct the ISN.


RESPONSE 114
Explanation

A refresh file function using the E1 command was issued (E1 with ISN=0), and one of the following situations has occurred:

  • PGM_REFRESH is not specified for the file.

  • The user session is not at ET status.

Action

If you forgot to specify the ISN for the E1 command, or the command was not issued at ET status, correct your program. If PGM_REFRESH was not specified for the file in question, specify PGM_REFRESH for the file with ADADBM.


RESPONSE 132
Explanation

Because of concurrent updates, the LOB data processing may fail. If a reattempt to process the LOB data also fails, response 132 is returned.

Action

If the subcode (field ACBXERRC in the ACBX) is not one of the subcodes mentioned below, and if the response code 132 is reproducible even though the accessed LOB fields are not being updated, contact your nearest support centre.

If one of the following subcodes occurs, you must change the program that is making the Adabas calls: If this response is returned with subcode 297, the following applies - a planned feature for large object (LB) fields (for example, character code conversion of LB field values) is not yet supported.

297

A planned feature for large object (LB) fields (for example, character code conversion of LB field values) is not yet supported.

300

The referential integrity and uniqueness checks done by subtransactions are currently not compatible with commands that modify LOB values.


RESPONSE 144
Explanation

One of the following situations has occurred:

  • The ISN specified with an A1 command was not in hold status for the user.

  • An ISN in the ISN buffer for a multifetch ET was not in hold status. In this case, the first 2 bytes of the Additions 2 field (in binary format) contain the offset of that ISN in the ISN buffer.

Action

Put the ISN in `hold' before using the A1 command or the multifetch ET command.


RESPONSE 145
Explanation

One of the following situations has occurred:

  • An attempt was made to insert a record using an N2 command with an ISN that is in hold status.

  • An attempt was made to hold an ISN which was in hold status for another user and the R option is specified. In this case, the Additions 2 field contains the binary value 0;

  • Hold queue overflow. In this case, the Additions 2 field contains a value not equal to 0.

    Note:
    This hold queue overflow error can only occur with Adabas versions < 5.1.


RESPONSE 146
Explanation

An invalid buffer length was detected by the Adabas interface routine, in an MC call, or one of the following errors occurred for a multifetch command:

  • the buffer header was invalid (both offsets are set)

  • at least one ISN buffer offset was not divisible by 4

  • the start offset was outside the multicall buffer range

  • the record buffer was not large enough to contain all subcommand control blocks.

The value in the Additions 2 field identifies the buffer: the first 2 bytes contain the buffer number in binary format, the last two bytes contain the buffer name, as shown in the following table:

                  Bytes 1-2        Bytes 3-4
                     1             FB (format buffer)
                     2             RB (record buffer)
                     3             SB (search buffer)
                     4             VB (value buffer)
                     5             IB (ISN buffer)
Action

Correct the buffer length.


RESPONSE 147
Explanation

User buffer not accessible by the Adabas interface routine.

Action

Check whether the control block, format buffer, value buffer, record buffer and ISN buffer have valid addresses and lengths. Check whether the control block, ISN buffer and record buffer are write-protected.


RESPONSE 148
Explanation

The Adabas nucleus was not active, or the call could not be sent to the Adabas nucleus, when the command was issued.

A value may be returned in the third and fourth bytes of the Additions 2 field, indicating the reason (2 byte binary format):

  • value=0: no active database server was found, either local or remote.

  • value=3: the nucleus is performing shutdown processing and will not accept new users or new transactions.

  • value=21: NET-WORK ACCESS communication has failed. The first two bytes of the Additions 2 field contain an error number.

  • value=22: there is a problem with the Adabas IPC driver. The first two bytes of the Additions 2 field contain an error number.

  • value=23: there was a problem attaching the Adabas IPC driver's shared memory (ADABAS V3.1 only).

  • value=24: the ADALNK shared library cannot be loaded correctly.

  • value=26: IPC problem during open processing, e.g. the shared memory could not be attached.

  • value=27: IPC problem during read in message queue.

  • value=28: IPC problem during write in message queue.

  • value=29: IPC resources exist, but the database server was not active (UNIX platforms only).

Action

The action depends on the value returned in bytes 3 and 4 of the Additions 2 field:

  • value 0: start the nucleus and reissue the command.

  • value 3: wait for the nucleus to shut down, restart it and re-issue the command.

  • value 21: see the ENTIRE NET-WORK manual for further information.

  • value 22, 23: shut down the nucleus if it is still active and restart it. If the error still occurs, try the command "showipc -kd <dbid>", then restart the nucleus and re-issue the command.

  • value 24: check the location and permissions of the ADALNK shared library.

  • value 26, 27, 28: one reason for this message may be that somebody has deleted an IPC resource: in this case, shut down the nucleus if it is still active and restart it. If the error still occurs, try the command "showipc -kd <dbid>", then restart the nucleus and re-issue the command. Another reason may be that the IPC resources are not sufficient: in this case, increase the IPC resources, or decrease the values of some nucleus parameters on which the required amount of IPC resources depends, or stop some other process that also consumes IPC resources (please refer to the section Increasing System V IPC Resources in the Installation document for further information about IPC resources).

  • value 29: execute the command "showipc -kd <dbid>", then restart the nucleus and re-issue the command.


RESPONSE 149
Explanation

A communication error was detected. The Additions 2 field contains the system service completion code which caused the error response.

Action

Check the Additions 2 field.


RESPONSE 150
Explanation

Too many database nuclei have been used in parallel. The Additions 2 field contains the maximum number of nuclei allowed in parallel.

Action

Do not use more database IDs in a single program than the value given in the Additions 2 field.


RESPONSE 151
Explanation

A command queue overflow occurred.

Action

The DBA may increase the value of the NC parameter and/or the command may be issued when there is a lower level of command activity.


RESPONSE 152
Explanation

The internal user buffer was not large enough to contain the user buffer areas.

Action

Contact your nearest support centre.


RESPONSE 153
Explanation

A second `CALL Adabas' has been issued while the first one is still being processed.

Action

Issue only one call at a time.


RESPONSE 154
Explanation

The Adabas call has been cancelled by the user.

Action

No action required


RESPONSE 162
Explanation

No additional space was available for the Adabas buffer pool.

Action

Increase the value of the LBP parameter. Because the buffer pool overflow is normally caused by too many blocks in the buffer pool waiting to be written to disk, specifying a low value for the WRITE_LIMIT parameter is recommended.


RESPONSE 165
Explanation

A descriptor name was either invalid or did not exist in the descriptor value table. This error may occur during ADAREC regenerate

  • if a file was loaded with an incorrect (wrong) FDT;

  • if ADAINV was not re-executed following a stop at a SYNP checkpoint.

Bytes 3 and 4 of the Additions 2 field contains the name of the descriptor that caused the error.

Action

If the error is not a handling error, run the INDEX option of ADAVFY and contact your nearest support centre.


RESPONSE 166
Explanation

An error was detected in an inverted list index; a descriptor value was not found during a delete operation.

Bytes 3 and 4 of the Additions 2 field contains the name of the descriptor that caused the error.

Action

  • Locate the descriptor that caused the error in the Additions 2 field of the user control block;

  • Run the VERIFY option of ADAINV for this descriptor and save the output;

  • Reinvert the descriptor;

  • If necessary, restart the database (if this is possible);

  • Send the following information to your nearest support centre:

    • The output of the VERIFY option of ADAINV;

    • All available PLOGs;

    • The FDT of the file containing the error;

    • If the nucleus crashed, the crash directory.


RESPONSE 167
Explanation

An error was detected in an inverted list index; a descriptor value was already present during an insert operation.

Bytes 3 and 4 of the Additions 2 field contains the name of the descriptor that caused the error.

Action

Do the following steps:

  • Locate the descriptor that caused the error in the Additions 2 field of the user control block;

  • Run the VERIFY option of ADAINV for this descriptor and save the output;

  • Reinvert the descriptor;

  • If necessary, restart the database (if this is possible);

  • Send the following information to your nearest support centre:

    • The output of the VERIFY option of ADAINV;

    • All available PLOGs;

    • The FDT of the file containing the error;

    • If the nucleus crashed, the crash directory.


RESPONSE 170
Explanation

The Adabas RABN required for the command could not be located. The Additions 2 field contains the invalid RABN in 4 byte binary format.

Action

Run the LOST, INDEX and DATA options of ADAVFY for the file in question and contact your nearest support centre.


RESPONSE 172
Explanation

The maximum possible ISN of the file was reached and no more can be allocated.

Action

If the file contains significantly less than 232 records, you should unload the file with ADAULD and reload it with ADAMUP without USERISN, however, you must be aware that problems may arise if the ISNs have semantics for you - if, for example, you use the ISNs to reference records in this file, additional reorganization of these references will be necessary.

The alternative to unloading/reloading the data is to split up your data into more than one file, and to adapt your application accordingly.


RESPONSE 173
Explanation

An invalid Data Storage RABN was detected. The Additions 2 field contains the invalid RABN in 4 byte binary format.

Action

Run the DATA option of ADAVFY for the file in question and contact your nearest support centre.


RESPONSE 176
Explanation

An inconsistency was detected in an inverted list. The Additions 2 field contains the inconsistent RABN in 4 byte binary format.

Action

Check if an autorestart or an ADAREC REGENERATE have disabled the index. If not, run the INDEX option of ADAVFY for the file in question. If the INDEX option signalled errors, you should recreate the entire inverted list with ADAINV REINVERT ALL or contact your nearest support centre.


RESPONSE 177
Explanation

A record could not be found in the Data Storage block in which it should have been contained as indicated by the Address Converter.

Action

Run the AC option of ADAVFY for the file in question and contact your nearest support centre.


RESPONSE 182
Explanation

Necessary ET data was not found in the appropriate WORK block.

Action

Save WORK1 and send it to your nearest support centre together with a description of what caused the pending autorestart and, if possible, the dump directory and the PLOG. Then restore and regenerate the database.


RESPONSE 196
Explanation

Referential integrity has been violated.

Bytes 3 and 4 of the Additions 2 field contain the name of the violated constraint.

Bytes 1 and 2 of the Additions 2 field contain the reason as a two-byte binary number:

Value Meaning
1 Required ISN in hold by another user
3 Maximum number of ISNs held by one user is reached
5 Check integrity mismatch, required value not found during check
7 Double update to a record within a cascade detected
8 Limit of stacked commands reached
Action

Handle the referential integrity violation, for example, write an error message.


RESPONSE 200
Explanation

Security violation detected, the two right-most bytes of the Additions 2 field will contain a subcode; in case of an ACBX call also the Error Subcode field will contain the sub-code:

Value Meaning
0 Security violation detected.
31 Authentication check in external security system failed.
Action
Value Meaning
0

Supply the correct password.

Check the permission level associated with this password against the file's access or update protection level.

Check the password for Security by Value criteria for the current file.

31 Supply valid credentials for authentication.

RESPONSE 201
Explanation

The password specified was not found.

Action

Supply the correct password.


RESPONSE 202
Explanation

An attempt was made to use a file for which the user is not authorized.

Action

Supply the correct password.


RESPONSE 204
Explanation

The password supplied is already in use.

Action

A password name cannot be changed to an existing one.


RESPONSE 210
Explanation

A receive buffer was lost in NETRDI.

Action

The DBA may increase the value of the NAB or NC parameters in the NETRDI in the target node.


RESPONSE 211
Explanation

A remote utility cannot be executed because OPTIONS = LOCAL_UTILITIES is set for the database.

Action

Contact the DBA of the remote database.


RESPONSE 212
Explanation

Function not implemented in the target architecture.

Action

Execute the utility on the target node.


RESPONSE 215
Explanation

The Adabas interface (adalnkx, adalnk, adalnknc) used by the application program, or the Entire Net-Work version used is not supported by the Adabas nucleus. For example, the Adabas nucleus Version 6.1 does not support the Adabas interface of Version 5.1. If a 32-bit version and a 64-bit version of Adabas exists for an operating system, the 64-bit nucleus does not support the Adabas interface of the 32-bit version - 32-bit applications must use the 32-bit mode Adabas interface of the 64-bit version.

Note:
The compatible Entire Net-Work versions for an Adabas version are documented in the Release Notes.

Action

If you are using an incompatible version of Entire Net-Work, upgrade it to a compatible version. Check the definition of the environment variable PATH (Windows) or LD_LIBRARY_PATH (UNIX). If the application has been linked with the s-bit on UNIX, it is necessary that the correct Adabas interface has been installed with $SAG = /opt/softwareag.


RESPONSE 224
Explanation

An Adabas command has been timed out by NET-WORK.

Action

Check the node/remote database, or contact your database administrator.


RESPONSE 230
Explanation

The protocol defined by the X/Open XA specification is violated. This happens, for example, if a user tries to issue an ET call for an XA transaction.

Action

Follow the XA specification.


RESPONSE 241
Explanation

The system cannot load the specified user exit shared library or dynamic load library, or the specified function does not exist in this shared library or dynamic load library. If the function does not exist in the shared library or dynamic load library, bytes 1 and 2 of the Additions 2 field contain the system's error number in binary format, otherwise these two bytes contain 0. Bytes 3 and 4 of the Additions 2 field contains the number of the ADALNK user exit which failed in binary format.

Action

Make sure that you use the correct environment variable for the user exit.


RESPONSE 242
Explanation

A double allocation has been detected between two or more files or a file and the free space table.

Action

Run ADAVFY without any options to find out which parts of which files are affected. Contact your nearest support centre with the output from ADAVFY.


RESPONSE 243
Explanation

An invalid FCB extent has been detected for a file.

Action

Contact your nearest support centre.


RESPONSE 245
Explanation

Pending utility entries in UCB.

Action

Delete the entries with RESET = UCB before executing RECOVER, but ensure that the utilities which own the UCB entries are no longer running.


RESPONSE 246
Explanation

Utility communication block (UCB) overflow.

Action

Execute the RESET function of ADADBM to remove unused entries from the utility communication block if the utilities that own them are no longer running.


RESPONSE 247
Explanation

Correct ID not found in the utility communication block.

Action

The utility cannot be restarted. Delete the utility communication block entry and rerun the utility.


RESPONSE 250
Explanation

Function not yet implemented.

Action

Wait for a later version of Adabas.


RESPONSE 251
Explanation

Invalid utility call - versions conflict.

Action

Check whether utilities and database nuclei are of the same version. Contact your nearest support centre.


RESPONSE 252
Explanation

Invalid subroutine call - coding error. This response may also be returned on setting the NET-WORK timeout via Adaset Timeout if NET-WORK is not correctly installed.

Action

Contact your nearest support centre.


RESPONSE 253
Explanation

System file not loaded or inconsistent.

Action

Check the system files by running ADAVFY.


RESPONSE 255
Explanation

The Adabas command could not be processed because not enough Adabas nucleus or operating system resources are available. The value in the first two bytes of the Additions 2 field indicates the reason (2 bytes binary format).

Action
Value = 1

No space available for the attached buffers. Increase the LAB (length of attached buffers) parameter.

Value = 2

No space available in the client ID table. Increase the NCL (number of client threads) parameter.

Value = 3

Message queue generation failed. Increase the corresponding operating system parameters (please refer to the Installation Manual for further information).

Value = 4 - 6

Internal error: unexpected response code from system function. Contact your nearest support centre.

Value = 7 (only with ADALNKX)

The ADAMPLNK executable could not be loaded. Make this module available.

Value = 8

No space available for extended attached buffers. Increase the value of the LABX (length of extended attached buffers) parameter.