ORA-00054: Resource busy and acquire with NOWAIT specified

You tried to execute a LOCK TABLE or SELECT FOR UPDATE command with the NOWAIT keyword but the resource was unavailable.



Wait and try the command again after a few minutes.

or

Execute the command without the NOWAIT keyword.



Let's say we have 2 session, one session updates a table:


SQL> create table test (n number);

Table created.

SQL> insert into test values(1);

1 row created.

SQL> commit;

Commit complete.

SQL> update test set n=2;

1 row updated.

--> NO COMMIT yet



Now, the other session is trying to select a record for update:

eg:


SQL> declare
2 n number;
3 begin
4 select n into n from test for update nowait;
5 end;
6 /
declare
*
ERROR at line 1:
ORA-00054: resource busy and acquire with NOWAIT specified
ORA-06512: at line 4




Did not find what you were looking for? Search the internet.
Forum Messages
09-APR-2008 13:57:28Tablespace related IssueMohammed Mujtaba Khan Reply
Hi,
I have one TBS in 8i which consists only one DBF , which is under one user it contains 53 master tables and 19 transaction tables, each tx table contains 5 10 lakh rows , performance is very low how shold i increase d performance ? and if i want to migrate it to 11g then how can i ? its on windows.

plz do help me
: ->  09-APR-2008 14:03:48Check execution planDbMotive Reply
You have to check the execute plan of the statement that has poor performance.
It might be of missing indexes, invalid joins, ...

For the transfer to Oracle 11g, you have a number of options.
You can use the old exp/imp, use datapump or investigate using transportable tablespaces
14-APR-2008 09:47:05ora -00054 Resource busy and acquire with NOWAIT specified sujatha ch Reply
hi to all
I started importing meanwhile i forget to disable the constraints,while the table is about to start import i tried to disable the constraints.then i got this error.how can i proceed now.Please respond fast clint is waiting.
: ->  14-APR-2008 11:20:48Check v$lockDbMotive Reply
Check v$lock and dba_dml_locks and/or dba_ddl_locks to see what is causing the lock.

It is possible the latter 2 data dictionary views do not exist, if that is the case, run ?/rdbms/admin/catblock as SYS user to create the Data dictionary views

07-MAY-2008 11:37:56Thanks for explanation atporfi Reply
Your exemple above about ora-00054 is very interesting and explicit
Thanks a lot
07-MAY-2008 12:11:10ORA-00054atporfi Reply
You've suggested to Check v$lock and dba_dml_locks and/or dba_ddl_locks to see what is causing the lock ?
How can i know (which value of column )can indicate me what is caused the lock and shall i keep a session on line or not ?
Thanks for help

04-JUN-2008 16:54:52ImportantJuan felipe Londo?o Reply
hello,

can see in this link : http://programacion.com/simple/foros/34/msg/79372/

maybe.. is the answer.
24-JUL-2008 11:52:49i cant able to rebuild my query do this error.Abdul kalam Reply
One of the Query was unable to execute ..(that is to rebuild my index..)

i cant able to rebuild the index in peak hour

since that particular table has 1 crore of records..

what would be the solution for this issue
21-OCT-2008 09:43:49AMIT CHHABRA Reply
i am trying to alter table where there is no data but its showing me error(ora 00054) even i restart the connectionat should i do please suggest.
: ->  21-OCT-2008 09:59:18Check which session is holding lockDbMotive Reply
You can check which other session is accessing the object:


select sid from v$lock where id1=(select object_id from dba_objects where owner='HERE_OWNER' and object_name='HERE_OBJECT');


You can then kill that session
Add your message for ORA-00054
Name:email:
Validation Code:0fpp6nmrey27yqh4o
Enter Code above:
Title:
State your problem: