Einzelnen Beitrag anzeigen

Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.297 Beiträge
 
Delphi 12 Athens
 
#1

FireDAC, onDemand, DeadLock

  Alt 8. Jul 2018, 11:10
Datenbank: MSSQL • Version: 2012 • Zugriff über: FireDAC
Hallöle...
Heute brauche ich Hilfe...

Gegeben:

Anwendung mit 2Mio Zeilen und gewachsen... Nun stoßen wir mit dem Arbeitspeicher an die Grenze. Manche Forms greifen sich über 1GB Arbeitspeicher. Die Connection steht auf FetchMode fmAll und ReadCommited.
...aber sie läuft auch im Netzwerk problemlos.
Die EXE liegt auf einem Server für Alle.

Was ich gemacht habe:
Connection auf fmOnDemand mit 200 Datensätzen. Der Speicher hat sich auf 1/3 minimiert. Damit kann ich leben. Test lokal i.O.
Aber:
Im Netzwerk hatte ich zwischen 10 Minuten und 3 Stunden einen DeadLock mit einem INSERT
Statement. (leider habe ich keinen Screenshot) Desweiteren habe ich haufenweise Supended Pages. (im Prinzip logisch) Unabhängig von dem Statement habe ich den DeadLock!

Problem:

Die Anwendung ist permanent gestartet. Das läßt kaum Raum für Tests.

Was ich gelesen habe:

https://www.mcseboard.de/topic/20426...kierungen-aus/

Wie bekomme ich die Kuh vom Eis... Wie macht man es richtig mit den DataSets um DeadLocks vorzubeugen? Welche Voraussetzungen müssen für OnDemand gegeben sein? Sind SUSPENDED Pages "gefährlich"?

Ich hoffe auf den entscheidenden Tipp...
  Mit Zitat antworten Zitat