Je rencontre un souci de verrous au niveau SQL serveur.
Je me trouve dans la situation suivante:
Une application web interroge une base SQL server 2000.
Lors d'un select, le seveur sql renvoie a l'appli web le message suivant:
Microsoft OLE DB Provider for SQL Server (0x80004005)
La transaction (ID du processus 64) a été bloquée sur les ressources lock
par un autre processus et a été choisie comme victime. Relancez la
transaction.
Après quelques recherches, j'ai appris qu'il est possible de configurer le
niveau d'isolation des procedures stockées.
Cependant, avant de modifier ce paramètre, je souhaiterai connaître le
niveau actuel d'isolation. La commande DBBCC USEROPTIONS ne mentionne pas ce
paramètre.
Comment puis-je voir cette information ?
d'autre part, si vous avez des suggestions sur la façon dont je pourrais
éliminer ces blocages sur verrous, je suis preneur.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
bruno reiter [MVP]
par défaut READ COMMITED
pour éviter les deadlocks, principalement, éviter les locks de table dans un ordre différent (client puis facture d'un côté, facture puis client de l'autre) éviter les escalades de lock concurrentes (mettre un TABLOCK quand on pense qu'on va locker à terme la plupart des enregs d'une table dans une MàJ).
br
"Guillaume" wrote in message news:
Bonjour,
Je rencontre un souci de verrous au niveau SQL serveur. Je me trouve dans la situation suivante: Une application web interroge une base SQL server 2000. Lors d'un select, le seveur sql renvoie a l'appli web le message
suivant:
Microsoft OLE DB Provider for SQL Server (0x80004005) La transaction (ID du processus 64) a été bloquée sur les ressources lock par un autre processus et a été choisie comme victime. Relancez la transaction.
Après quelques recherches, j'ai appris qu'il est possible de configurer le niveau d'isolation des procedures stockées. Cependant, avant de modifier ce paramètre, je souhaiterai connaître le niveau actuel d'isolation. La commande DBBCC USEROPTIONS ne mentionne pas
ce
paramètre. Comment puis-je voir cette information ?
d'autre part, si vous avez des suggestions sur la façon dont je pourrais éliminer ces blocages sur verrous, je suis preneur.
Merci de votre aide. Guillaume.
par défaut READ COMMITED
pour éviter les deadlocks, principalement,
éviter les locks de table dans un ordre différent (client puis facture d'un
côté, facture puis client de l'autre)
éviter les escalades de lock concurrentes (mettre un TABLOCK quand on pense
qu'on va locker à terme la plupart des enregs d'une table dans une MàJ).
br
"Guillaume" <Guillaume@discussions.microsoft.com> wrote in message
news:4618B752-090D-497C-9CD6-B3DC52992C74@microsoft.com...
Bonjour,
Je rencontre un souci de verrous au niveau SQL serveur.
Je me trouve dans la situation suivante:
Une application web interroge une base SQL server 2000.
Lors d'un select, le seveur sql renvoie a l'appli web le message
suivant:
Microsoft OLE DB Provider for SQL Server (0x80004005)
La transaction (ID du processus 64) a été bloquée sur les ressources lock
par un autre processus et a été choisie comme victime. Relancez la
transaction.
Après quelques recherches, j'ai appris qu'il est possible de configurer le
niveau d'isolation des procedures stockées.
Cependant, avant de modifier ce paramètre, je souhaiterai connaître le
niveau actuel d'isolation. La commande DBBCC USEROPTIONS ne mentionne pas
ce
paramètre.
Comment puis-je voir cette information ?
d'autre part, si vous avez des suggestions sur la façon dont je pourrais
éliminer ces blocages sur verrous, je suis preneur.
pour éviter les deadlocks, principalement, éviter les locks de table dans un ordre différent (client puis facture d'un côté, facture puis client de l'autre) éviter les escalades de lock concurrentes (mettre un TABLOCK quand on pense qu'on va locker à terme la plupart des enregs d'une table dans une MàJ).
br
"Guillaume" wrote in message news:
Bonjour,
Je rencontre un souci de verrous au niveau SQL serveur. Je me trouve dans la situation suivante: Une application web interroge une base SQL server 2000. Lors d'un select, le seveur sql renvoie a l'appli web le message
suivant:
Microsoft OLE DB Provider for SQL Server (0x80004005) La transaction (ID du processus 64) a été bloquée sur les ressources lock par un autre processus et a été choisie comme victime. Relancez la transaction.
Après quelques recherches, j'ai appris qu'il est possible de configurer le niveau d'isolation des procedures stockées. Cependant, avant de modifier ce paramètre, je souhaiterai connaître le niveau actuel d'isolation. La commande DBBCC USEROPTIONS ne mentionne pas
ce
paramètre. Comment puis-je voir cette information ?
d'autre part, si vous avez des suggestions sur la façon dont je pourrais éliminer ces blocages sur verrous, je suis preneur.
Merci de votre aide. Guillaume.
Guillaume
Merci pour ces infos.
"bruno reiter [MVP]" wrote:
par défaut READ COMMITED
pour éviter les deadlocks, principalement, éviter les locks de table dans un ordre différent (client puis facture d'un côté, facture puis client de l'autre) éviter les escalades de lock concurrentes (mettre un TABLOCK quand on pense qu'on va locker à terme la plupart des enregs d'une table dans une MàJ).
br
"Guillaume" wrote in message news: > Bonjour, > > Je rencontre un souci de verrous au niveau SQL serveur. > Je me trouve dans la situation suivante: > Une application web interroge une base SQL server 2000. > Lors d'un select, le seveur sql renvoie a l'appli web le message suivant: > Microsoft OLE DB Provider for SQL Server (0x80004005) > La transaction (ID du processus 64) a été bloquée sur les ressources lock > par un autre processus et a été choisie comme victime. Relancez la > transaction. > > Après quelques recherches, j'ai appris qu'il est possible de configurer le > niveau d'isolation des procedures stockées. > Cependant, avant de modifier ce paramètre, je souhaiterai connaître le > niveau actuel d'isolation. La commande DBBCC USEROPTIONS ne mentionne pas ce > paramètre. > Comment puis-je voir cette information ? > > d'autre part, si vous avez des suggestions sur la façon dont je pourrais > éliminer ces blocages sur verrous, je suis preneur. > > Merci de votre aide. > Guillaume.
Merci pour ces infos.
"bruno reiter [MVP]" wrote:
par défaut READ COMMITED
pour éviter les deadlocks, principalement,
éviter les locks de table dans un ordre différent (client puis facture d'un
côté, facture puis client de l'autre)
éviter les escalades de lock concurrentes (mettre un TABLOCK quand on pense
qu'on va locker à terme la plupart des enregs d'une table dans une MàJ).
br
"Guillaume" <Guillaume@discussions.microsoft.com> wrote in message
news:4618B752-090D-497C-9CD6-B3DC52992C74@microsoft.com...
> Bonjour,
>
> Je rencontre un souci de verrous au niveau SQL serveur.
> Je me trouve dans la situation suivante:
> Une application web interroge une base SQL server 2000.
> Lors d'un select, le seveur sql renvoie a l'appli web le message
suivant:
> Microsoft OLE DB Provider for SQL Server (0x80004005)
> La transaction (ID du processus 64) a été bloquée sur les ressources lock
> par un autre processus et a été choisie comme victime. Relancez la
> transaction.
>
> Après quelques recherches, j'ai appris qu'il est possible de configurer le
> niveau d'isolation des procedures stockées.
> Cependant, avant de modifier ce paramètre, je souhaiterai connaître le
> niveau actuel d'isolation. La commande DBBCC USEROPTIONS ne mentionne pas
ce
> paramètre.
> Comment puis-je voir cette information ?
>
> d'autre part, si vous avez des suggestions sur la façon dont je pourrais
> éliminer ces blocages sur verrous, je suis preneur.
>
> Merci de votre aide.
> Guillaume.
pour éviter les deadlocks, principalement, éviter les locks de table dans un ordre différent (client puis facture d'un côté, facture puis client de l'autre) éviter les escalades de lock concurrentes (mettre un TABLOCK quand on pense qu'on va locker à terme la plupart des enregs d'une table dans une MàJ).
br
"Guillaume" wrote in message news: > Bonjour, > > Je rencontre un souci de verrous au niveau SQL serveur. > Je me trouve dans la situation suivante: > Une application web interroge une base SQL server 2000. > Lors d'un select, le seveur sql renvoie a l'appli web le message suivant: > Microsoft OLE DB Provider for SQL Server (0x80004005) > La transaction (ID du processus 64) a été bloquée sur les ressources lock > par un autre processus et a été choisie comme victime. Relancez la > transaction. > > Après quelques recherches, j'ai appris qu'il est possible de configurer le > niveau d'isolation des procedures stockées. > Cependant, avant de modifier ce paramètre, je souhaiterai connaître le > niveau actuel d'isolation. La commande DBBCC USEROPTIONS ne mentionne pas ce > paramètre. > Comment puis-je voir cette information ? > > d'autre part, si vous avez des suggestions sur la façon dont je pourrais > éliminer ces blocages sur verrous, je suis preneur. > > Merci de votre aide. > Guillaume.