Skip to main content

Import Error - deadlock detected while trying to lock object TEST.CLIENT



Have received the below error while doing schema level refresh.

========================================================================
Processing object type SCHEMA_EXPORT/VIEW/GRANT/OWNER_GRANT/OBJECT_GRANT
Processing object type SCHEMA_EXPORT/TABLE/CONSTRAINT/REF_CONSTRAINT

ORA-39083: Object type REF_CONSTRAINT failed to create with error:
ORA-04020: deadlock detected while trying to lock object TEST.CLIENT
Failing sql is:
ALTER TABLE "TEST"."TRANSACTION" ADD CONSTRAINT "TRANSACTION_FK" FOREIGN KEY ("LAST_UPDATED_BY_CLIENT_ID") REFERENCES "TEST"."CLIENT" ("CLIENT_ID") ENABLE;

========================================================================

First check for locked objects in the database. using the below queries.

SQL> sqlplus / as sysdba

-------------------------------------------------------------------------

SQL> select * from v$locked_object;

no rows selected

-------------------------------------------------------------------------

SQL> column blocker format a25
SQL> column blockee format a25
SQL> column sid_serial format a10
SQL>
SQL> select
  2  (select username || ' - ' || osuser from v$session where sid=a.sid) blocker,
  3  a.sid || ', ' ||
  4  (select serial# from v$session where sid=a.sid) sid_serial,
  5  ' is blocking ',
  6  (select username || ' - ' || osuser from v$session where sid=b.sid) blockee,
  7  b.sid || ', ' ||
  8  (select serial# from v$session where sid=b.sid) sid_serial
  9  from v$lock a, v$lock b
 10  where a.block = 1
 11  and b.request > 0
 12  and a.id1 = b.id1
 13  and a.id2 = b.id2;

no rows selected

-------------------------------------------------------------------------

Then try to execute the failed Query connecting to the schema. like below

Connect to that schema & execute.

SQL> ALTER TABLE "TEST"."TRANSACTION" ADD CONSTRAINT "TRANSACTION_FK" FOREIGN KEY ("LAST_UPDATED_BY_CLIENT_ID") REFERENCES "TEST"."CLIENT" ("CLIENT_ID") ENABLE;

Table altered.



Comments

Popular posts from this blog

ORA-28007: THE PASSWORD CANNOT NE REUSED

             - Here will see how to deal with  => ORA-28007: the password cannot be reused -  I got a request from client user, stating his account has been locked. When I check the status of the account I found the below. connect to SYS user & execute the below query of that database. SQL> select password,username,account_status,profile from dba_users where username='TEST'; PASSWORD               USERNAME   ACCOUNT_STATUS                 PROFILE ------------------             ----------------  -------------------------------           -------------------- AB2Aa8AC9971521e3     TEST       EXPIRED(GRACE)&LOCKED    NONAPP_USERS So, then I have unlocked the account and checked the same again & I found the below results. ...

CHANGING DBID FOR ORACLE DATABASE 11G

C:\Users\computer>sqlplus SQL*Plus: Release 11.1.0.7.0 - Production on Thu Sep 10 21:03:33 2013 Copyright (c) 1982, 2008, Oracle.  All rights reserved. Enter user-name: sys as sysdba Enter password: Connected to: Oracle Database 11g Enterprise Edition Release 11.1.0.7.0 - Production With the Partitioning, OLAP, Data Mining and Real Application Testing options SQL> select dbid from v$database;       DBID ---------- 2188161033 SQL> exit Disconnected from Oracle Database 11g Enterprise Edition Release 11.1.0.7.0 - Production With the Partitioning, OLAP, Data Mining and Real Application Testing options C:\Users\computer>nid DBNEWID: Release 11.1.0.7.0 - Production on Thu Sep 10 21:04:44 2013 Copyright (c) 1982, 2007, Oracle.  All rights reserved. Keyword     Description                    (Default) ---------------------------------------------------- TARGET ...