2009-11-25 8 views
1

Quelqu'un peut-il donner un exemple simple d'une transaction de base de données en utilisant un verrou partagé intentionnel? Si oui, on utilise un verrou exclusif intentionnel.Verrou IS (intentionnel partagé)

+0

Est-ce ce devoir? –

+0

Nop. Est-ce juste que je ne comprends pas comment mettre en œuvre le concept. Je comprends clairement les verrous partagés et les verrous exclusifs, mais je ne vois pas le besoin d'un verrou «intentionnel». Un exemple sera utile. – Sheldon

Répondre

3

Des verrous d'intention sont nécessaires car le gestionnaire de verrous ne comprend pas la structure physique des entités verrouillées. Si une transaction S-verrouille un enregistrement, disons R1, et qu'une autre transaction demande un X-lock sur une page, disons P1, que se passe-t-il si R1 se trouve sur P1? le gestionnaire de verrous ne doit pas honorer la requête P1 jusqu'à ce que R1 soit libéré, mais pour ce faire, il doit comprendre que R1 est contenu dans P1.

Étant donné que le gestionnaire de verrous ne peut clairement pas connaître les détails structurels des objets verrouillés, le verrou d'intention a été introduit. La première transaction placera un verrou IS sur P1 puis un verrou S sur R1. Lorsque la seconde transaction demande le verrouillage X sur P1, elle entrera en conflit avec le verrou IS placé par la première transaction.

+0

Merci Remus! – Sheldon

+0

Donc les verrous Intent ne sont pas des verrous comme ça, mais des façons de définir si certaines données peuvent être verrouillées ou non, et si possible, comment le verrouiller? comme un arbre de haut en bas, avec une granularité robe sur les trois comme plus grand. – Sheldon

+1

Du point de vue du gestionnaire de serrures, les verrous sont de 4 types: IS, IX, S, X (en ignorant les verrous U et d'autres types). LM les comprend tous comme des verrous et possède une matrice de compatibilité qui rend IS-IX et IX-IX compatibles (mais pas S-IX, X-IS et X-IX). L '«accesseur» (qui comprend la structure de l'arborescence de la hiérarchie) naviguera dans l'arborescence en demandant que je le verrouille en descendant la hiérarchie, jusqu'à ce qu'il trouve l'objet réel sur lequel il demande un verrou S ou X. –