Consultor Eletrônico



Kbase P25530: Error (132) when running application, causing database index corruption errors (1422) and (5022).
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   23/02/2010
Status: Verified

SYMPTOM(s):

Error (132) when running application, causing database index corruption errors (1422) and (5022).

** <tablename> already exists with <value>. (132)

Index <indexname> in <tablename> for recid <recid> could not be deleted. (1422)

SYSTEM ERROR: Ixundo failed in ixdel because it was unable to find the key to delete in index number <number>. This Index may have an incorrect key. (5022)

Error (132) increases with load and doesn't always cause the corruption, but the more occurrences the higher the chances of the corruption occurring.

FACT(s) (Environment):

Progress 9.1x
OpenEdge 10.0A
All Supported Operating Systems

CAUSE:

Backing out a transaction when error 132 occurs, left the indexes in an inconsistent state.
Error 1422 would occur at some later point in time, when trying to update the records that caused the index corruption.

CAUSE:

Bug# OE00087655

FIX:

Upgrade to Progress 9.1D09 or later
or
Upgrade to OpenEdge 10.0B or later
Workaround:

Program your 4GL application code to stop error 132 error from occurring.

You will also need to fix the corruption in the offending table by rebuilding the index mentioned in the error 5022 and/or 1422. You can use the proutil command with the idxfix option to perform this.