AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi Verzögerte Aktualisierung der DB Daten
Thema durchsuchen
Ansicht
Themen-Optionen

Verzögerte Aktualisierung der DB Daten

Ein Thema von TurboMagic · begonnen am 18. Sep 2025 · letzter Beitrag vom 19. Sep 2025
Antwort Antwort
TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
3.104 Beiträge
 
Delphi 12 Athens
 
#1

Verzögerte Aktualisierung der DB Daten

  Alt 18. Sep 2025, 20:00
Datenbank: Firebird • Version: 5 • Zugriff über: FireDAC
Hallo,

in meiner Anwendung habe ich inzwischen folgendes Problem:

Ich erzeuge einen Beleg, danach rufe ich die Belegliste auf und der Beleg ist dort noch nicht
sichtbar. Rufe ich diese Liste wenig später erneut auf, ist er da.

Die Belegerzeugung nutzt eigentlich (ich prüfe das nochmal im Detail aber ein kurzes Code-Review
ergab nichts verdächtiges) eine Transaktion die im Erfolgsfall commitet wird und die Anzeige
der Belege erfolgt erst danach.

Frage also: gibt es noch irgendwelche anderen möglichen Ursachen für diese Verzögerungen?
Die DB läuft lokal, ist nicht so riesig und die benutzten SQL Befehle führen auch nicht gerade
zu einer hohen Last.

Transaktionsisolation in der FDConnection ist ixUnspecified. Im Firebird hab' ich aber nix
an der Konfiguration geändert.
Grüße
TurboMagic
  Mit Zitat antworten Zitat
Benutzerbild von Jasocul
Jasocul

Registriert seit: 22. Sep 2004
Ort: Delmenhorst
1.377 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Verzögerte Aktualisierung der DB Daten

  Alt Gestern, 06:18
Ohne die genaue Konfiguration zu kennen, ist das nicht einfach.
Ich würde zum Testen erstmal prüfen, ob die Transaktion noch aktiv ist, bevor man die Aktualisierung der Belege startet (InTransaction glaube ich).
Sollte das nicht der Fehler sein, Solltest du die DB mit einem passenden DB-Monitor überwachen, um der Ursache auf den Grund zu gehen. Wenn Die Transaktion so lange braucht, solltest du dir natürlich auch ansehen, warum da so ist. Dafür könntest du den passenden SQL-Befehl direkt auf der DB ausführen, bzw. mal analysieren lassen. Je nach DB findest du das meines Wissens unter Explain Plan oder Analyze.
Peter
  Mit Zitat antworten Zitat
Benutzerbild von TigerLilly
TigerLilly

Registriert seit: 24. Mai 2017
Ort: Wien, Österreich
1.258 Beiträge
 
Delphi 12 Athens
 
#3

AW: Verzögerte Aktualisierung der DB Daten

  Alt Gestern, 09:18
Kann es sein, dass die Belegliste ihre Daten schon abgerufen hat, wenn du den Beleg erzeugst + er deshalb nicht drin ist?
Certified Delphi Developer (2025)
  Mit Zitat antworten Zitat
Papaschlumpf73

Registriert seit: 3. Mär 2014
Ort: Berlin
467 Beiträge
 
Delphi 12 Athens
 
#4

AW: Verzögerte Aktualisierung der DB Daten

  Alt Gestern, 09:32
Ich würde auch vermuten, dass die DB-Prozedur asynchron ausgeführt wird und dein Programm einfach schneller ist.
  Mit Zitat antworten Zitat
Benutzerbild von Jasocul
Jasocul

Registriert seit: 22. Sep 2004
Ort: Delmenhorst
1.377 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: Verzögerte Aktualisierung der DB Daten

  Alt Gestern, 09:57
Ich würde auch vermuten, dass die DB-Prozedur asynchron ausgeführt wird und dein Programm einfach schneller ist.
Da Transaktionen asynchron laufen, kann auch das eine mögliche Ursache sein. Das kann meines Wissens mit InTransaction geprüft werden.
Peter
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:41 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz