1. | 2. | 3. | 4. | 5. | 6. | 7. | 8. | 9. | 10. | 11. | 12. | 13. | |
![]() |
![]() |
![]() |
![]() |
||||||||||
![]() |
![]() |
![]() |
![]() |
![]() |
|||||||||
![]() |
![]() |
![]() |
![]() |
||||||||||
![]() |
![]() |
![]() |
|||||||||||
![]() |
![]() |
Welche Transaktionen müssen während der Verarbeitung warten? Geben Sie hierbei die wartende Transaktion, die blockierte Ressource und die blockierende Transaktion an.
Hinweis: Wenn eine Transaktion ein Datum erst liest und später schreibt, fordert der Scheduler bereits beim Lesezugriff eine Schreibsperre für das Datum an.
Musterlösung vom 06.07.2008:
Die Historie und die Zugriffe der Transaktionen auf die Ressourcen des Zwei-Phasen-Sperrprotokolls:
Transaktionen | Ressourcen | ||||||
![]() |
![]() |
![]() |
![]() |
![]() |
x | y | z |
bot | |||||||
![]() |
|||||||
![]() |
![]() |
||||||
bot | |||||||
![]() |
![]() |
||||||
![]() |
|||||||
bot | |||||||
![]() |
![]() |
||||||
![]() |
|||||||
![]() |
|||||||
bot | |||||||
![]() |
|||||||
![]() |
![]() |
||||||
eot | |||||||
![]() |
free | ||||||
commit | |||||||
![]() |
bot | ||||||
![]() |
![]() |
||||||
![]() |
|||||||
![]() |
|||||||
![]() |
|||||||
![]() |
![]() |
||||||
![]() |
|||||||
![]() |
![]() |
||||||
![]() |
|||||||
eot | |||||||
![]() |
![]() |
free | free | ||||
![]() |
![]() |
||||||
![]() |
![]() |
||||||
commit | ![]() |
||||||
![]() |
|||||||
![]() |
|||||||
![]() |
|||||||
![]() |
|||||||
eot | |||||||
![]() |
![]() |
||||||
![]() |
|||||||
commit | ![]() |
||||||
![]() |
|||||||
![]() |
|||||||
![]() |
![]() |
||||||
![]() |
|||||||
![]() |
|||||||
eot | |||||||
![]() |
![]() |
free | |||||
![]() |
|||||||
commit | ![]() |
||||||
![]() |
|||||||
![]() |
![]() |
||||||
![]() |
|||||||
![]() |
![]() |
||||||
![]() |
|||||||
eot | |||||||
![]() |
free | free | free | ||||
![]() |
|||||||
![]() |
|||||||
commit |