ORA Error ReferenceSearch errors

All errors › ORA errors

ORA-00054: Resource busy and acquire with NOWAIT specified or timeout expired

What it means

The statement needs a lock on a row or table that another session holds, and it was told not to wait (NOWAIT, DDL against a table with open transactions, or DDL_LOCK_TIMEOUT expired).

How to fix it

Find the blocker in v$session (blocking_session column) or v$locked_object and let it commit or roll back. For DDL on busy tables set ALTER SESSION SET ddl_lock_timeout = 30, or run it in a quiet window. Uncommitted work in your own other session (IDE tab) is a frequent cause.

Catch it before it runs

ORA Error Helper
Explains ORA-/PLS- codes inside JetBrains IDEs and DataGrip.
PL/SQL Lint
Flags risky PL/SQL patterns while you type.
Oracle Plan Reader
Reads execution plans and points at the slow step.
PL/SQL in Practice
Kindle book with practical PL/SQL for working developers.

Nearby errors

Updated 2026-11-12.