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

 

  1. #1
    Candidat au Club
    Profil pro
    Administrateur de base de données
    Inscrit en
    janvier 2014
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : janvier 2014
    Messages : 2
    Points : 3
    Points
    3

    Par défaut Session suspendue lors de l'exécution d'un 'ALTER INDEX'

    Bonjour,

    Nous avons mis en place, à l'aide du 'Maintenance Plan Wizard', un plan de maintenance de reconstruction d'index et de mise à jour des statistiques. Ce plan s’exécute deux fois par semaine (mercredi et dimanche à 00h15).

    La plupart du temps, l’exécution de ce plan se passe bien, mais il arrive parfois que la session associée à ce plan soit au statut "Suspended" et que d'autres sessions soient bloquées par ce plan.

    Voici un extrait des informations contenues dans les logs SQL Server :

    04/22/2018 00:43:34,spid31s,Unknown,Timeout occurred while waiting for latch: class 'FCB'<c/> id 00000000F1FAD538<c/> type 2<c/> Task 0x00000000F974ACA8 : 0<c/> waittime 900 seconds<c/> flags 0x2000000019<c/> owning task 0x00000000F8540CA8. Continuing to wait.
    04/22/2018 00:39:21,spid61,Unknown,Timeout occurred while waiting for latch: class 'FCB'<c/> id 00000000F1FAD538<c/> type 3<c/> Task 0x00000000F5BB1088 : 0<c/> waittime 900 seconds<c/> flags 0x2000000019<c/> owning task 0x00000000F8540CA8. Continuing to wait.
    04/22/2018 00:38:34,spid31s,Unknown,Timeout occurred while waiting for latch: class 'FCB'<c/> id 00000000F1FAD538<c/> type 2<c/> Task 0x00000000F974ACA8 : 0<c/> waittime 600 seconds<c/> flags 0x2000000019<c/> owning task 0x00000000F8540CA8. Continuing to wait.
    04/22/2018 00:34:21,spid61,Unknown,Timeout occurred while waiting for latch: class 'FCB'<c/> id 00000000F1FAD538<c/> type 3<c/> Task 0x00000000F5BB1088 : 0<c/> waittime 600 seconds<c/> flags 0x2000000019<c/> owning task 0x00000000F8540CA8. Continuing to wait.
    04/22/2018 00:33:34,spid31s,Unknown,Timeout occurred while waiting for latch: class 'FCB'<c/> id 00000000F1FAD538<c/> type 2<c/> Task 0x00000000F974ACA8 : 0<c/> waittime 300 seconds<c/> flags 0x2000000019<c/> owning task 0x00000000F8540CA8. Continuing to wait.
    04/22/2018 00:29:21,spid61,Unknown,External dump process return code 0x20000001.<nl/>External dump process returned no errors.
    04/22/2018 00:29:09,spid61,Unknown,[INFO]          Identity             Begin               End |        State                  Result     Error  Speculate   Prepared LazyCommit   ReadOnly |      Transaction         Database          ThreadId |   ReadSet  WriteSet   ScanSet Savepoint LogSizeRq | CommitDep TotalComm       Dependent 0       Dependent 1       Dependent 2       Dependent 3       Dependent 4       Dependent 5       Dependent 6       Dependent 7 |            Area  Location |
    04/22/2018 00:29:05,spid61,Unknown,Stack Signature for the dump is 0x00000000C74D6A88
    04/22/2018 00:29:03,spid61,Unknown,* Short Stack Dump
    04/22/2018 00:29:03,spid61,Unknown,* -------------------------------------------------------------------------------
    04/22/2018 00:29:03,spid61,Unknown,* *******************************************************************************
    04/22/2018 00:29:03,spid61,Unknown,*
    04/22/2018 00:29:03,spid61,Unknown,*  MPDB = OFF<c/> ONLINE = OFF<c/> ALLOW_ROW_LOCKS = ON<c/> ALLOW_PAGE_LOCKS = ON)
    04/22/2018 00:29:03,spid61,Unknown,*  ON = ALL WITH (PAD_INDEX = OFF<c/> STATISTICS_NORECOMPUTE = OFF<c/> SORT_IN_TE
    04/22/2018 00:29:03,spid61,Unknown,*             ALTER INDEX [IX_Index] ON [dbo].[table_name] REBUILD PARTITI
    04/22/2018 00:29:03,spid61,Unknown,* Input Buffer 432 bytes -
    04/22/2018 00:29:03,spid61,Unknown,*
    04/22/2018 00:29:03,spid61,Unknown,* Latch timeout
    04/22/2018 00:29:03,spid61,Unknown,*
    04/22/2018 00:29:03,spid61,Unknown,*   04/22/18 00:29:03 spid 61
    04/22/2018 00:29:03,spid61,Unknown,* BEGIN STACK DUMP:
    Pour quelles raisons la reconstruction des index est parfois suspendue ? et comment éviter ce blocage ?

    Merci,
    Bonne journée

  2. #2
    Rédacteur
    Avatar de SQLpro
    Homme Profil pro
    Expert SGBDR & SQL, spécialiste Microsoft SQL Server
    Inscrit en
    mai 2002
    Messages
    18 070
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert SGBDR & SQL, spécialiste Microsoft SQL Server
    Secteur : Conseil

    Informations forums :
    Inscription : mai 2002
    Messages : 18 070
    Points : 42 273
    Points
    42 273

    Par défaut

    La maintenance des index, suivant la nature du script, oblige à poser des verrous pour les reconstruire.

    Les plans graphiques de l'assistant génère des scriptes de maintenance "bulldozer" qui ne sont pas du tout optimisé pour une production professionnelles, mais plutôt dédié aux gens venant d'Accès et qui n'ont aucune idée, de ce peut revêtir, comme notion, l'acronyme DBA.

    En d'autre terme, une voiture, comme un SGBDR doit passer en maintenance régulièrement.
    Vous avez alors deux options :
    • soit une maintenance grossière qui consiste à changer toutes les pièces d'usure sans regarder si elles sont usées et faire toutes les vidanges sans regarder si cela est opportun. Cela va coûter cher pour rien et c'est ce que fait l'assistant...
    • soit une maintenance intelligente qui consiste à mesurer ce qui est réellement usé et à vidanger, et ne s'occuper que de ces éléments là. Cela sera beaucoup plus léger, plus rapide et moins bloquant. De plus suivant la version/edition, on peut opter pour des choses encore plus légères comme le mode "online" qui permet d'éviter de verrouiller la maintenance des index...


    La 2e solution, nécessite des connaissances (tables et procédures systèmes) et un peu de jugeote. C'est comme tout, cela s'apprend. Il existe des formations professionnelles sur l'administration de SQL Server, comme celle que je délivre à Orsys :
    http://www.orsys.fr/formation-sql-se...istration.html

    Maintenant, pour vous aider plus en avant, vous avez oublié l'essentiel... Nous donner l'édition et la version de SQL Server !
    Lisez ceci : https://www.developpez.net/forums/d9...vement-poster/

    A +

    Nom : Couverture livre SQL server Eyrolles.jpg
Affichages : 57
Taille : 105,0 Ko
    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...
    * * * * * Enseignant CNAM PACA - ISEN Toulon - CESI Aix en Provence * * * * *

Discussions similaires

  1. Réponses: 8
    Dernier message: 10/11/2005, 15h58
  2. Un truc bizard lors de l'exécution !
    Par GuitGuit44 dans le forum C
    Réponses: 3
    Dernier message: 22/10/2005, 13h47
  3. Analyser les exceptions survenues lors de l'exécution
    Par cedricgirard dans le forum Langage
    Réponses: 10
    Dernier message: 13/10/2005, 15h22
  4. Problème lors de l'exécution de mes programmes
    Par darkmalak01 dans le forum Langage
    Réponses: 7
    Dernier message: 27/09/2005, 18h35
  5. Message d'erreur Windows lors de l'exécution de l'appli D6-
    Par kolac dans le forum Bases de données
    Réponses: 4
    Dernier message: 07/12/2004, 17h55

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