Consultor Eletrônico



Kbase P186433: Error 12112 when deleting records from a table with a word index, or running idxcheck against the ta
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   26/04/2011
Status: Unverified

SYMPTOM(s):

Error 12112 when deleting records from a table with a word index, or running idxcheck against the tables with word indexes.

Adding or updating a record in a GUI client and then attempting to delete it in a character client results in errors.

Unable to delete old values for the index of a word-indexed field (index <index-name> of table <table-name>). The index may be damaged. (12112)

Only new tables with word indices were failing.

Indices had been rebuilt.

FACT(s) (Environment):

Tables with word indexes had been deleted, recreated, data reloaded, but the word-rules had not been applied to the created tables.
Database code page is UTF-8.
Word break table, or word-rule table does not change with UTF-8 database.
All Supported Operating Systems
Progress 9.x
OpenEdge 10.x

CHANGE:

Clients code page had been changed and some tables had been deleted and recreated.

CAUSE:

When tables are deleted or new tables are added to a database, if they have word indices the word-rules must be applied so the table / word index, will know what rules to follow when building the word indices.

FIX:

Apply word-rules to the database and rebuild the word indexes.

1. With a UTF-8 Database whenever a new table is added or an old table is deleted and recreated the word-rules file must be reapplied.
To apply word rules run the following command.
proutil <db-name> -C word-rules rule-num
The word-break or word-rule file for UTF-8 is proword.254 and should be in the $DLC directory, if not copy it from the $DLC/prolang/utf directory. The syntax to apply the word rules would be:
proutil <db-name> -C word-rules 254
2. Rebuild the indices for all new tables that have word indices.