| Deadlock | |||||
|
Ein Deadlock ist in der Informatik ein Zustand, in dem sich mehrere Prozesse gegenseitig blockieren, weil der eine Prozess auf die Freigabe von Ressourcen wartet, die der andere Prozess belegt und vice versa. Dabei kann es sich auch um einen sich blockierenden Kreislauf mehrerer Prozesse handeln. Deadlock bei Datenbanken Dies können beispielsweise zwei oder mehrere Transaktionen bei einer Datenbank sein oder Prozesse bei einem Betriebssystem. Im Falle der Datenbank muss das Datenbankmanagementsystem (DBMS) solche Deadlocks verhindern oder erkennen und auflösen. Um Deadlocks zu verhindern muss das DBMS seine Prozesse sequentialisieren. Diese Deadlock-Lösungsstrategie kann nachteilig sein, da das DBMS auf parallele, sich gegenseitig triggernde Prozesse verzichten muss. Um bereits bestehende Deadlocks zu erkennen und aufzulösen verbraucht das DBMS sehr viele Ressourcen. Deswegen ist es eine gute Strategie, Prozesse erst nach einer Überprüfung freizugeben. Ausserdem sollte das DBMS auf verdächtige Prozesse, die in Wartestellung sind achten, z.B. i.V.m. einem Leerlauf des Prozessors. |
|||||
| Siehe auch: datenbank betriebssysteme Transaktion ACID Normalform Rollback Referentielle-Integrität Konsistenz Multiversion-Concurrency-Control MySQL | |||||