Quand SQL Server acquiert-il des verrous?


10

La liste des niveaux d'isolement dans SQL Server trouvée ici indique que les verrous d'écriture acquis dans une transaction sont conservés jusqu'à la fin de la transaction. Cependant, il ne mentionne rien au sujet de l'acquisition de ces verrous.

Les verrous sont-ils par défaut acquis au début d'une transaction, ou juste au moment où ils sont nécessaires? Si ce dernier est vrai, serait-il donc avantageux dans les transactions importantes d'effectuer les opérations d'écriture le plus tard possible afin de minimiser la durée de détention des verrous X?

Réponses:


5

Les verrous sont-ils par défaut acquis au début d'une transaction, ou juste au moment où ils sont nécessaires?

Les verrous sont acquis immédiatement avant la lecture ou l'écriture. Selon la granularité de verrouillage sélectionnée par le moteur de stockage, des verrous peuvent être acquis au niveau de la ligne, de la page, de la partition ou de l'objet (table).

Si ce dernier est vrai, serait-il donc avantageux dans les transactions importantes d'effectuer des opérations d'écriture le plus tard possible afin de minimiser la durée de détention des verrous X?

Oui, cela peut être avantageux pour la concurrence, selon le niveau d'isolement utilisé par les transactions simultanées.

Lecture connexe:

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.