Recherche de la cause de l'erreur de blocage à partir du fichier de trace Oracle

J'ai été faire ce "ora-00060 blocage détecté lors de l'attente pour la ressource" erreur souvent maintenant dans ma demande, lorsque plusieurs utilisateurs utilisent l'application. J'ai le fichier de trace à partir de l'oracle Admin, mais ont besoin d'aide dans la lecture. Ci-dessous les bits de données à partir du fichier de trace, qui, je l'espère, aidera à trouver la cause.

*** 2013-06-25 09:37:35.324
DEADLOCK DETECTED ( ORA-00060 )

[Transaction Deadlock]

The following deadlock is not an ORACLE error. It is a deadlock due 
to user error in the design of an application
or from issuing incorrect ad-hoc SQL. The following
information may aid in determining the deadlock:

Deadlock graph:
                   ---------Blocker(s)--------  ---------Waiter(s)---------
Resource Name          process session holds waits  process session holds waits
TM-000151a2-00000000       210      72    SX   SSX      208      24    SX   SSX
TM-000151a2-00000000       208      24    SX   SSX      210      72    SX   SSX

session 72: DID 0001-00D2-000000C6  session 24: DID 0001-00D0-00000043 
session 24: DID 0001-00D0-00000043  session 72: DID 0001-00D2-000000C6 

Rows waited on:
 Session 72: no row
 Session 24: no row

----- Information for the OTHER waiting sessions -----
Session 24:
 sid: 24 ser: 45245 audsid: 31660323 user: 90/USER
  flags: (0x45) USR/- flags_idl: (0x1) BSY/-/-/-/-/-
  flags2: (0x40009) -/-/INC
 pid: 208 O/S info: user: zgrid, term: UNKNOWN, ospid: 2439
   image: oracle@xyz.local
 client details:
   O/S info: user: , term: , ospid: 1234
   machine: xyz.local program: 
 current SQL:
  delete from EMPLOYEE where EMP_ID=:1

 ----- End of information for the OTHER waiting sessions -----

Information for THIS session:

 ----- Current SQL Statement for this session (sql_id=dyfg1wd8xa9qt) -----
 delete from EMPLOYEE where EMP_ID=:1
===================================================

Je vous serais reconnaissant si quelqu'un peut me dire quel est le "graphique de Blocage::", c'est dire. Aussi les lignes attendu sur la section dit pas de lignes.

J'ai également lu dans certains blogs que "sqltxt" la section du fichier de trace peut suggérer la cause. Ci-dessous est la requête que je vois dans cette section.

 select /*+ all_rows */ count(1) from "USERS"."EMPLOYEE_SALARY" where EMPSAL_EMP_ID=:1

La employee_salary table a foreignkey contrainte sur EMPSAL_EMP_ID colonne.

L'astuce sql dit "all_rows", fait-il dire que ce tableau obtient le tableau de niveau de verrouillage lors de la suppression d'enregistrements à partir de la table des employés? je n'ai pas un index sur la colonne de clé étrangère actuellement. Serait l'ajout d'un index sur cette colonne aider?

De bien vouloir publier, dans le cas d'un complément d'informations est nécessaire.

Grâce

source d'informationauteur shashikanthb