none
Requete de delete sur une base RRS feed

  • Question

  • Bonjour


    J'effectue un delete d'un site sharepoint,donc une requete SQL

    En regardant le nombre de locks sur le job SQL de delete , a l aide d'une requete SQL,
    je remarque qu'au bout de  10 000 000 locks,
    le serveur SQL n'a plus de ressources pour finaliser la requete.


    Mon serveur est un DL 380 G5.

    Au depart j'ai effectue un test avec 2Go de memoire sur le serveur, donc 1,5Go de RAM maximum  pour le
    serveur SQL, le serveur SQL n'a plus de ressources pour finaliser la requete a partir de 10 000 000 locks

    Puis j'ai rajouté de la memoire, et j'ai active l'AWE et le /PAE dans le fichier boot.ini
    J'ai affecté 3,5Go de RAM maximum  pour le serveur SQL, le serveur SQL n'a toujours plus de ressources
    pour finaliser la requete a partir de 10 000 000 locks


    Ce comportement je n'arrive pas a l'expliquer car en rajoutant de la memoire, la requete delete aurait du  echouée
    avec plus 10 000 000 locks pour le job SQL de delete

     

    Avez vous des idées

     

    Merci de votre aide

    jeudi 28 juillet 2011 00:10

Réponses

  • Bonjour



    J'ai d'abord effectué une purge de tous les documents appartenant au site sharepoint
    en lancant une requete SQL



    A l'aide de cette requete suivante dans la BD qui est mappée au site sharepoint

    je determine le SiteID de mon site sharepoint

    SELECT [Id]
          ,[SiteId]
          ,[FullUrl],[Title]   
    FROM [dbo].[Webs]



    puis j'effectue un delete par lot de 1000
    DELETE TOP (1000) FROM AllDocStreams
    WHERE SiteId = siteidsitesharepoint


    A la fin du delete j'ai supprimé 200 000 documents appartenant au site sharepoint
    Je lance le delete de mon site sharepoint et ouf la commande fonctionne.


    Christophe
    dimanche 31 juillet 2011 16:20

Toutes les réponses

  • Bonjour c'est étrange comme comportement.

    Le lock_escalation aurait du intervenir dès lors que les 5000 locks /index ont été dépassés.

    Il est possible que la table n'ai plus le comportement par défaut.

    Quelles est la valeur de la colonne lock_escalation dans la dmv sys.tables ?

    Si la valeur n'est pas à 0, je vous suggère :

    ALTER TABLE XXX SET  LOCK_ESCALATION = TABLE

    Et ensuite, revenir au mode qui était en place.

     

    Cdlt,

     

    Christophe


    Christophe LAPORTE Conseil IT Consultant – Formateur certifié Microsoft Microsoft Certified Master - MVP SQL Server – MCT
    jeudi 28 juillet 2011 09:40
  • Bonjour,

    Je me suis perdu sur le forum sql :)

    Je ne me prononcerais pas sur le comportement de SQL Server.

    Concernant SharePoint il est connu que le deletesite est exigeant, touchant 35 tables sql et supprimant en une seule fois le contenu stocké sur le site, d'où les locks.

    C'est pourquoi a été introduit sur le CU d'avril l'option gradual delete. Pourquoi ne pas l'essayer?

       --> stsadm -o deletesite -url [URL de la collection de site] -gradualdelete

     

     


    Nicolas Cambot - Blog Nelite
    jeudi 28 juillet 2011 18:01
  • Bonjour,

     

    Merci de nous tenir au courant,

    Cordialement,

    Roxana



    Roxana PANAIT, MSFT  Follow TechNetFr on Twitter 

    • Votez l’article qui vous est utile ou postez un pour participer au concours : Appel à la contribution

    •Nous vous prions de considérer que dans le cadre de ce forum on n’offre pas de support technique et aucune garantie de la part de Microsoft ne peut être offerte.

    vendredi 29 juillet 2011 12:32
  • Bonjour



    J'ai d'abord effectué une purge de tous les documents appartenant au site sharepoint
    en lancant une requete SQL



    A l'aide de cette requete suivante dans la BD qui est mappée au site sharepoint

    je determine le SiteID de mon site sharepoint

    SELECT [Id]
          ,[SiteId]
          ,[FullUrl],[Title]   
    FROM [dbo].[Webs]



    puis j'effectue un delete par lot de 1000
    DELETE TOP (1000) FROM AllDocStreams
    WHERE SiteId = siteidsitesharepoint


    A la fin du delete j'ai supprimé 200 000 documents appartenant au site sharepoint
    Je lance le delete de mon site sharepoint et ouf la commande fonctionne.


    Christophe
    dimanche 31 juillet 2011 16:20