Engine assertion failure for create Index
Posted in 2007
Topics: General Discussion
Version: IDS 10 Informix engine threw "altering older version row to latest version failed" error when I tried to create index on one of the tables. Little history on the events: 1. I disabled all the constraints and indexes on this table 2. Then I realized that I need to drop one column, so I dropped one column of this table 3. Loaded data to this table using hpl 4. Ran level 0 archive 5. Ran create index for this table and then engine gave error "altering older version row to latest version failed". It also points to "File: rssupp.c Line: 2874" I am not sure if it's a bug in Informix that it's not recognizing the changes that I did in point 2 above.
On Aug 2, 2:42 pm, mohitanch...@gmail.com wrote: > Version: IDS 10 > > Informix engine threw "altering older version row to latest version > failed" error when I tried to create index on one of the tables. > Little history on the events: > > 1. I disabled all the constraints and indexes on this table > 2. Then I realized that I need to drop one column, so I dropped one > column of this table > 3. Loaded data to this table using hpl > 4. Ran level 0 archive > 5. Ran create index for this table and then engine gave error > "altering older version row to latest version failed". It also points > to "File: rssupp.c Line: 2874" > > I am not sure if it's a bug in Informix that it's not recognizing the > changes that I did in point 2 above. Sounds like a bug. I'd open a support case with IBM. While you wait for the patch, try forcing all pages to update before creating the index by doing UPDATE <table> set <somecolumn> = <itself> WHERE 1=1; That will force an update of every row in the table which will update the row to the latest schema version for the table. Art S. Kagel
On Aug 2, 1:22 pm, "Art S. Kagel" <art.ka...@gmail.com> wrote: > On Aug 2, 2:42 pm, mohitanch...@gmail.com wrote: > > > > > > > Version: IDS 10 > > >Informixengine threw "altering older version row to latest version > > failed" error when I tried to createindexon one of the tables. > > Little history on the events: > > > 1. I disabled all the constraints and indexes on this table > > 2. Then I realized that I need to drop one column, so I dropped one > > column of this table > > 3. Loaded data to this table using hpl > > 4. Ran level 0 archive > > 5. Ran createindexfor this table and then engine gave error > > "altering older version row to latest version failed". It also points > > to "File: rssupp.c Line: 2874" > > > I am not sure if it's a bug inInformixthat it's not recognizing the > > changes that I did in point 2 above. > > Sounds like a bug. I'd open a support case with IBM. > > While you wait for the patch, try forcing all pages to update before > creating theindexby doing UPDATE <table> set <somecolumn> = <itself> > WHERE 1=1; That will force an update of every row in the table which > will update the row to the latest schema version for the table. > > Art S. Kagel- Hide quoted text - > > - Show quoted text - This table has 50M rows and I don't have index on that table, I can't create one because of this problem that I mentioned earlier. I can write a stored procedure to update one row at a time, but seems highly inefficient because for every row it will try to match what I give in where clause. If I do update all then it will run out of logs. Is there any other efficient way of updating the rows that just goes in sequence and commits after every 'n' transactions.