Einzelnen Beitrag anzeigen

Benutzerbild von MyRealName
MyRealName

Registriert seit: 19. Okt 2003
Ort: Heilbronn
673 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: Wissen, wer in Firebird einen lock conflict ausgelöst hat

  Alt 18. Okt 2016, 15:20
Ich habe das mit dem monitor mal eingebaut. Das Problem ist, dass ich an dieser Stelle, wo ich bin im Code, nur DbExpress nutzen kann anstatt UniDAC oder IbDAC. IbDAC hätte ich ein TIBCTraceAudit Komponente.
Es gibt aber ein Problem, wo ich UniDAC nicht im Mainthread und in extra threads nutzen kann, das schmiert dann beim Verlassen der Anwendung ab. Und ja, im Thread habe ich eigene Verbindung, Transaction, Queries etc. Und zwischen MainThread und DB Thread gibt es nur einen Kommunikationskanal über Messages. Die von DevArt wollen allerdings ein Demo haben dazu und das kann ich aus Zeitgründen im Moment nicht bauen.

Gute Nachricht ist : Der Fehler tritt in einer Queue auf, wo ich alle Dokumente zum Verarbeiten reinwerfe, die lässt immer nur ein Dokument durch (stammt aus einer Zeit, wo UniDAC noch keine WAIT_TRANSACTION konnte). Und der Deadlock kommt nur gaaanz selten mal in 2 Kundeninstallationen (von denen ich weiss) vor. Ich will da einfach mal sehen, ob da jemand noch mit einem anderen Programm (wie IbExpert) rumfummelt, oder einen Prozess in meiner Anwendung laufen hat, der nicht laufen sollte. Da ich beim Deadlock sofort nachsehe, sollte die Chance gross sein, dass diese Transaction noch lebt.

Helge
  Mit Zitat antworten Zitat