Kbase P60168: Unable to update index to primary via Oracle Delta SQL Utility
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  3/16/2010 |
|
Status: Verified
SYMPTOM(s):
Unable to update index to primary via Oracle Delta SQL Utility
UPDATE PRIMARY INDEX "test" ON "Customer" is being interpreted as the table name being "ON" instead of "Customer"
FACT(s) (Environment):
When using Oracle Delta SQL Utility receives error stating trying to update an index on table "ON" that does not exist
Incremental df is creating new index with same name as old index. Process is:
1. Rename old index
2. Create New Index
3. Update new index to primary
4. Drop old renamed index
Syntax in incremental .df for updating a primary index:
UPDATE PRIMARY INDEX <index name> ON <table name>
Oracle DataServer
Progress 9.1D
Progress 9.1E
All Supported Operating Systems
CAUSE:
Bug# OE00092974
CAUSE:
The problem is the Generate Delta SQL Utility code did not take into account that the table name was the 6th argument instead of the 5th. The 5th argument is the keyword "ON".
FIX:
Upgrade to 10.0A and above or use following work around:
Instead of using following statement in delta df
RENAME INDEX "old-ind" TO "temp-ind" ON "mtcancel"
ADD INDEX "new-ind" ON "my-tab"
AREA "Schema Area"
INDEX-FIELD "fld1" ASCENDING
INDEX-FIELD "fld2" ASCENDING
UPDATE PRIMARY INDEX new-ind" ON "my-tab"
DROP INDEX "temp-ind" ON "my-tab"
Use following statements:
RENAME INDEX "old-ind" TO "temp-ind" ON "my-tab"
ADD INDEX "new-ind" ON "my-tab"
AREA "Schema Area"
PRIMARY
INDEX-FIELD "fld1" ASCENDING
INDEX-FIELD "fld2" ASCENDING
DROP INDEX "temp-ind" ON "my-tab"