Kbase P9057: Table move within Oracle causes 1461
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  10/15/2008 |
|
Status: Verified
FACT(s) (Environment):
Oracle
Oracle DataServer
SYMPTOM(s):
Schema holder does not match database schema -- file field . (1461)
Schema holder does not match database schema - file OWNER.TABLENAME field <FIELDNAME> (1461)
Error 1461 is generated while running a FOR EACH with DISPLAY against a table
ORA-01502: index 'OWNER.TABLENAME##PROGRESS_RECID' or partition of such index is in unusable state
SELECT against the same table using an index from sqlplus fails with ORA-01502 error
CHANGE:
This table within Oracle was physically moved by the ALTER command to another tablespace
CAUSE:
The table's corresponding indexes are not present within the new tablespace.
When a FOR EACH statement is fired, Progress performs a schema check between the Oracle Database and the information within the schema holder The check matches data definiton and index information. If the index information is not present, like in this case, then the error 1461 can occur.
FIX:
Move table's corresponding indices to the current tablespace and then rebuild the indices. The following SQL command will do both:
ALTER INDEX <TABLE_NAME>##<INDEX_NAME> REBUILD
TABLESPACE <TABLESPACENAME>;