Reason for the code:
During an update operation, an inconsistency was found in the inverted list index. The leftmost two bytes of additon 2 of the Adabas control block (CB-ADD2) may contain the descriptor name.

As responded by Ki Weingart and discussed on SAG-L since 1996 (see Adabas response code 199),
some customers ran into this problem before. See SAG-L, please click.

"The 199 is a self-correcting response code. What happens is that the index (NI) and DATA do not match. Sometimes the index exists but points to a record that does not exist in DATA. ADABAS then issues a response code 199 and deletes the index record thereby rectifying itself. If the DATA record exists but not the index, then ADABAS adds the index and issues a 199."

Jim Poole responded 1999 when I (Dieter Storr) reported a response code 199 and pointed out that ADAICK did not find any error. I restarted the job and it processed the relevant ISN and abended (NAT3199) with another ISN. In this case, I released the descriptor, which caused the error. This happened under ADA527 and ADA622.

"We had a long history of corruption errors (for bad habits not to be published). ADAVAL is a far more robust utility for determining them (checks DS record content against index content) versus ADAICK (checks structure of pointers, lengths, etc).
A rsp. 199 on an update command is a self-correcting response code, the update found an error, backed out the update using the contents of DS (problem fixed, on to the next bad record). You can actually use this technique to fixe isolated errors verus Unload/Load or Release/Invert."

From SL24

Check the additions 2 field (ADD2) of the Adabas control block. The
leftmost 2 bytes of ADD2 should contain the descriptor field name which
was detected to be inconsistent.

Run utility ADAVAL VALIDATE to check the DE-values in the normal index
against the DATA records.

Resolution:

If ADA621 is installed: Apply zap AN21041 and re-start Adabas nucleus

Delete the descriptor reported in the ADD2 field (ADADBS RELEASE) and
recreate the descriptor using utility ADAINV.

If the 'problem' descriptor is unknown:

Unload the Adabas file with utility ADAULD

Delete the file with ADADBS DELETE

Re-load the file using ADALOD LOAD and provide input from step a)

Note: Although the actual update command is not completed (back out),
the Adabas nucleus
corrects the inconsistent DE-value in the NI automatically by adding the
missing DE-value into the index. Therefore the next update command on the
same ISN will not receive the rsp-199 again. However, the incorrect DE-
value encountered remains in the index and is detected by utility ADAVAL.

Early Warning - ADA742-004:

Apply zaps AN742302 and AU742132 / Use V743 ADALCO

Problem-No : 263886 INDEX INCONSISTENCY, RSP-175/-199
Given a particular distribution of descriptor values and ISN lists over multiple INDEX blocks, a specific INDEX update could introduce a rule violation in the INDEX structure. This rule violation alone would not cause any noticable errors, but a further certain sequence of updates might make the INDEX inconsistent and cause errors.

Possible error symptoms were:

A descriptor value present in the INDEX might not be found in a direct search for this value.

Response code 199 could occur on an attempt to delete a descriptor value/ISN from the INDEX.

Response code 113 or 175 could occur when reading
records via the INDEX.

ADAICK ICHECK reported ERROR-125, MI/NI ISNS DO
NOT AGREE.

ADAVAL reported mismatches between the INDEX and
DATA STORAGE.

This error was rare and involved the occurrence of all of the following elements:

Many DATA storage records containing the same
descriptor value.

The ISN list for this descriptor value spreading
over more than two NORMAL INDEX blocks and more
than one MAIN INDEX block.

Batches of updates involving this descriptor
value where by groups of ISNS were repeatedly
inserted and removed from the INDEX.

SAG recommend to check the INDEX of your database with the checkutility ADAICK (zap AU742132 applied). In case of inconsistencies these have to be corrected by either reinverting the descriptor (ADAINV or online invert) or unload and reload the file (ADAULD/ADALOD).