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 SQL Server Discussion :

verrou de Tampon type 4 [2000]


Sujet :

Administration SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    731
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 731
    Par défaut verrou de Tampon type 4
    Bonjour,

    J'ai eu ce message sur un vieux server 2000:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dépassement du délai lors de l’attente du verrou de tampon type 4.
    Page xxxx. DB ID=11
    Est ce l'équivalent d'un deadlock ? La taille de fichier de tempdb n'est pas limitée.
    Est un problème de mémoire physique (Mémoire SQL configurée dynamiquement sur ce server) ...?
    Comment corriger ce msg (sans migrer 2008 ou 2012 :-) )

    Merci.

    @+

  2. #2
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 998
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 998
    Billets dans le blog
    6
    Par défaut
    Souvent ou rarement ? Si c'est souvent il y a peut être un problème physique...

    Cela se produit sur un stress d'IO en général.
    ça va conduire à de la contention...

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  3. #3
    Membre émérite
    Profil pro
    Inscrit en
    Février 2008
    Messages
    758
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 758
    Par défaut
    Hello,

    Non rien à voir avec un deadlock, ni tempdb à priori (dbid=11)

    Il faudrait voir le message d'erreur en entier, avec Error, State, Severity... Mais vu la traduction ça ressemble à une 844 / 845. Une tâche (qui supporte l'exécution d'un batch) bloque sur la libération d'un latch (type 4 = exclusif), initialise un timer à 300 secondes et se met dans une file d'attente. A l'expiration du timer si la tâche est toujours en attente, boum, erreur 844 / 845.

    Il faudrait voir la trace de l'erreur en entier pour voir sur quoi porte le latch, l'owner et l'état de qq structures. Normalement un minidump doit être produit sur une 845 sauf dans certaines conditions bien précises. Est-ce que tu peux renvoyer l'errorlog en entier ou une large portion contenant l'erreur ?

    Thx

  4. #4
    Membre très actif
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    731
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 731
    Par défaut
    Bonjour,

    Voici les msg dans ERRORLOG:




    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Time out occurred while waiting for buffer latch type 4,bp 0x114c500, page 1:57748), stat 0xb, object ID 8:1694629080:0, EC 0x42CAB3F0 : 0, waittime 300. Not continuing to wait.
    Waiting for type 0x4, current count 0x100022, current owning EC 0x74B015A0.
    Erreur : 845, Gravité : 17, État : 1
    Dépassement du délai lors de l'attente du verrou de tampon type 4, page (1:57748), base de données ID = 11..
    La croissance automatique du fichier « pprd_log » de la base de données « pprd » a pris 1107245 millisecondes. Envisagez d'utiliser ALTER DATABASE pour définir une valeur FILEGROWTH moins élevée pour ce fichier.
    SQL Server has encountered 1 occurrence(s) of IO requests taking longer than 15 seconds to complete on file [F:\DataBase\ pprd.mdf] in database [pprd] (11).  The OS file handle is 0x0000046C.  The offset of the latest long IO is: 0x0000001c410000
    SQL Server has encountered 10 occurrence(s) of IO requests taking longer than 15 seconds to complete on file [F:\DataBase\ pprd.ldf] in database [pprd] (11).  The OS file handle is 0x0000048C.  The offset of the latest long IO is: 0x00000001b3ae00
    Merci.

    @+

  5. #5
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 998
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 998
    Billets dans le blog
    6
    Par défaut
    Problème très classique et erreur de débutant.... A me lire : http://blog.developpez.com/sqlpro/p5..._fichiers_et_t

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  6. #6
    Membre émérite
    Profil pro
    Inscrit en
    Février 2008
    Messages
    758
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 758
    Par défaut
    Citation Envoyé par dari68 Voir le message
    Bonjour,

    Voici les msg dans ERRORLOG:




    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Time out occurred while waiting for buffer latch type 4,bp 0x114c500, page 1:57748), stat 0xb, object ID 8:1694629080:0, EC 0x42CAB3F0 : 0, waittime 300. Not continuing to wait.
    Waiting for type 0x4, current count 0x100022, current owning EC 0x74B015A0.
    Erreur : 845, Gravité : 17, État : 1
    Dépassement du délai lors de l'attente du verrou de tampon type 4, page (1:57748), base de données ID = 11..
    La croissance automatique du fichier « pprd_log » de la base de données « pprd » a pris 1107245 millisecondes. Envisagez d'utiliser ALTER DATABASE pour définir une valeur FILEGROWTH moins élevée pour ce fichier.
    SQL Server has encountered 1 occurrence(s) of IO requests taking longer than 15 seconds to complete on file [F:\DataBase\ pprd.mdf] in database [pprd] (11).  The OS file handle is 0x0000046C.  The offset of the latest long IO is: 0x0000001c410000
    SQL Server has encountered 10 occurrence(s) of IO requests taking longer than 15 seconds to complete on file [F:\DataBase\ pprd.ldf] in database [pprd] (11).  The OS file handle is 0x0000048C.  The offset of the latest long IO is: 0x00000001b3ae00
    Merci.

    @+
    stat 0xb indique que la page en question (ici 1:57748) n'était pas en cours d'I/O, mais comme dit Fred la présence du message d'IO > 15 secs reste probablement la cause racine. Pour en être certain, il faudrait regarder à quel objet cette page fait référence:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    use <dbname>
    GO
    dbcc traceon(3604)
    GO
    dbcc page(11,1,57748,0)
    GO
    et chercher

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    "(...)
    Metadata: ObjectId = <val>
    (...)"
    ensuite:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    use <dbname>
    GO
    select object_name(<val>)
    GO
    On a le nom du vilain meneur (current owning EC ....) avec un minidump on doit pouvoir retrouver ce qu'il faisait avec cette page. Eventuellement un fichier mdmp avec l'ERRORLOG ?

    merci,

  7. #7
    Membre très actif
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    731
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 731
    Par défaut
    Bonjour et Merci à vous 2 : Dbaffaleuf et SQLPro.

    @+

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

Discussions similaires

  1. Changer le type de verrou sur le base de données SQL Server 2008
    Par bigzouzou dans le forum Administration
    Réponses: 1
    Dernier message: 03/08/2011, 12h41
  2. Changer le type de verrou sur une base de données SQL Server 2008
    Par bigzouzou dans le forum Administration
    Réponses: 1
    Dernier message: 03/08/2011, 11h20
  3. Réponses: 0
    Dernier message: 16/10/2007, 16h48
  4. utilisation du meta type ANY
    Par Anonymous dans le forum CORBA
    Réponses: 1
    Dernier message: 15/04/2002, 12h36

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