IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Administration Oracle Discussion :

problème de enq: TX - row lock contention


Sujet :

Administration Oracle

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    217
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 217
    Points : 112
    Points
    112
    Par défaut problème de enq: TX - row lock contention
    Bonjour,
    J'ai un problème de lock.
    D'après le rapport AWR : deux lignes sont lockées sur une table particulière.
    Si je connais la table en question comment puis je élargir mes recherches ?

    Ci joint l'extrait du rapport AWR.

    Merci d'avance,

    Frédéric.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
     
    Top 5 Timed Events                                         Avg %Total
    ~~~~~~~~~~~~~~~~~~                                        wait   Call
    Event                                 Waits    Time (s)   (ms)   Time Wait Class
    ------------------------------ ------------ ----------- ------ ------ ----------
    enq: TX - row lock contention           246         735   2989   98.5 Applicatio
    db file sequential read                 395           6     16    0.8   User I/O
    control file parallel write             310           4     14    0.6 System I/O
    CPU time                                              2           0.3
    control file sequential read          1,042           1      1    0.1 System I/O
              -------------------------------------------------------------
     
     
    Segments by Row Lock Waits             DB/Inst: AIRS/airs  Snaps: 10092-10093
    -> % of Capture shows % of row lock waits for each top segment compared
    -> with total row lock waits for all segments captured by the Snapshot
     
                                                                         Row
               Tablespace                      Subobject  Obj.          Lock    % of
    Owner         Name    Object Name            Name     Type         Waits Capture
    ---------- ---------- -------------------- ---------- ----- ------------ -------
    AIRS_GESTD TS_AIRS_DA HIT_ALPHA_NUM                   TABLE            2  100.00
              -------------------------------------------------------------

  2. #2
    Expert éminent
    Avatar de pachot
    Homme Profil pro
    Developer Advocate YugabyteDB
    Inscrit en
    Novembre 2007
    Messages
    1 822
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Suisse

    Informations professionnelles :
    Activité : Developer Advocate YugabyteDB
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2007
    Messages : 1 822
    Points : 6 446
    Points
    6 446
    Billets dans le blog
    1
    Par défaut
    Bonjour,
    Dans le rapport AWR, tu peux chercher le SQL qui prends 735 secondes et c'est probablement celui qui était en attende de verrous sur HIT_ALPHA_NUM
    Sinon, pour voir les blocages en cours, tu peux executer ORACLE_HOME/rdbms/admin/utllockt.sql qui te montera la hérarchie des sessions en attente (bloqueur et bloqué). Alors un tout dans v$session te donnera plus d'info pour identifier le programme ou l'utilisateur.
    Cordialement,
    Franck.

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    217
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 217
    Points : 112
    Points
    112
    Par défaut
    Bonjour,
    Merci, pour ce qui est de la résolution du lock, j'ai lu (forum Oracle) qu'on pouvait augmenter le INITRANS sur la table. Celui ci étant initialement à 1.
    Ca veut dire que initialement Oracle n'autorise qu'un accès à la table à la fois? c'est bizarre non?
    Dans tous les cas, que penses tu de ce type de correction?

    Merci d'avance,

    Frédéric

  4. #4
    Expert éminent
    Avatar de pachot
    Homme Profil pro
    Developer Advocate YugabyteDB
    Inscrit en
    Novembre 2007
    Messages
    1 822
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Suisse

    Informations professionnelles :
    Activité : Developer Advocate YugabyteDB
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2007
    Messages : 1 822
    Points : 6 446
    Points
    6 446
    Billets dans le blog
    1
    Par défaut
    Bonjour,

    INITRANS concerne les entrées ITL d'un bloc. Une contention là dessus serait "enq: TX - allocate ITL entry", ce n'est pas ton cas, toi c'est "row lock contention"
    Ca veut dire que initialement Oracle n'autorise qu'un accès à la table à la fois? c'est bizarre non?
    pas à la table. Au bloc. Oracle verouille au niveau ligne, mais doit aussi avoir un nombre d'entrée ITL au niveau bloc. Soit alloués au départ (INITRANS) soit dans l'espace libre (PCTFREE)
    Donc si c'étais le cas, il faudrait voir un de ces 2 paramètres.

    Pour revenir à ton problème, il faudrait comprendre pourquoi il y a eu contention: toujours sur le même enregistrement ou non ? combien de temps à chaque fois, ...

    Cordialement,
    Franck.

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    217
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 217
    Points : 112
    Points
    112
    Par défaut
    Bonsoir,
    Citation Envoyé par pachot Voir le message
    Bonjour,
    Pour revenir à ton problème, il faudrait comprendre pourquoi il y a eu contention: toujours sur le même enregistrement ou non ? combien de temps à chaque fois, ...
    Franck.
    Demain je lance le fameux script utllock et je reviens avec plus d'info le cas échéant.

    Frédéric

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    217
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 217
    Points : 112
    Points
    112
    Par défaut
    Bonsoir,
    Ca n'a pas été la peine de lancer le script.
    Le lock venait d'une mauvaise utilisation du logiciel.

    Merci encore.

    Frédéric

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 30/12/2008, 15h45
  2. probléme lors de changement du lock type
    Par dj_techno dans le forum Bases de données
    Réponses: 1
    Dernier message: 18/12/2008, 16h45
  3. Problème avec TDrawGrid(DBGRID1).Row
    Par Poisson Rouge dans le forum Bases de données
    Réponses: 2
    Dernier message: 06/07/2007, 10h52
  4. XSL : Problème pour visualiser le contenu de <content>
    Par externe dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 31/12/2005, 16h44
  5. Row lock
    Par cassandra dans le forum SQL Procédural
    Réponses: 4
    Dernier message: 09/04/2003, 16h07

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo