DBAtlas · Database operations atlas

ORA-08103: object no longer exists

Oracle

What does it mean?

An object (table, index, LOB segment) accessed by a running query no longer exists, or its physical structure changed. Usually a DDL/TRUNCATE happened underneath the object while the query was in progress.

Why does it happen?

The same object was TRUNCATEd/DROPped/SHRUNK while the query was open; a move (MOVE) or partition maintenance; a corrupted index/segment; the underlying structure disappearing while a LOB segment is accessed; a concurrent DDL conflict.

How to fix it

Verify that the object still exists and is valid: SELECT status FROM user_objects WHERE object_name = 'NAME'; Rebuild the relevant index/object (REBUILD) or rerun the query. Avoid TRUNCATE/DROP on objects while long-running queries use them. If corruption is suspected, check with ANALYZE ... VALIDATE STRUCTURE.

Open in DBAtlas →

More from this engine