This is truly strange. Within our application, we have an auditing
mechanism with records every insert and update with triggers. A row
level trigger records the ROWID of the record modified into a Package
variable. An after statement trigger reads this ROWID from the package
variable and selects the database based on it. This has been working
perfectly for about a year, until this week. Now the application is
throwing ORA-01410: invalid ROWID. The errors are not consistent at
all. In fact they seem pretty varied. It doesn't happen on EVERY
insert / update and it doesn't happen on every table which uses this
mechanism.
The only thing we know about that was done before these errors started
was a full database export with CONSISTENT=N. The export was kicked off
and 10 mins later was the first records instance of this error. I'm
having a hard time dealing with how the export could cause this, but the
correlation seems too significant. We've tried fixing the problem by
ANALYZE TABLE <table_name> VALIDATE STRUCTURE on the tables in question.
No errors were recorded and we are still having the same problems. Our
next idea is to rebuild the tables in question.
So, anyone have any idea what's going on? And does anyone have a
better solution?