Einzelnen Beitrag anzeigen

mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#17

AW: Lock conflict on no wait transaction ?

  Alt 8. Mär 2011, 08:02
Zitat:
@markus: Danke, aber ich habe den Clou glaube ich noch nicht ganz verstanden. Geht es um Isolation Level?
Nein, obwohl dieses damit zusammenhängt.

Es hat damit zu tun, wie der Firebird-Server Transaktionen/Änderungen innerhalb von Transaktionen verwaltet. Die meissten DBMS verwenden hierfür eine Logdatei, in der die Änderungen protokolliet werden; beim Rollback werden dieses dann in umgekehrter Reihenfolge umgekehrt.
Firebird verwendet hier für Versionierung, d.h. es wird beim Update der vorhandene Datensatz nicht geändert, sondern ein neuer mit einer höheren Version erzeugt. Das DBMS verwaltet diese Versionen und welche Version welcher Transaktionskontext sieht. Beim Rollback wird dann nur die Version des Kontext ungültig.
Markus Kinzler
  Mit Zitat antworten Zitat