Hi Leute,
ich habe 2 Firebird Datenbanken die ich aus einem Dienst herraus aus seperaten Threads anspreche.
Ein Thread importiert Daten aus einer anderen Datei und schreibt diese in "
DB 2",
dabei werden Event gesteuert auch bei jedem "Insert, Update u. Delete" Daten in
DB 1 geschrieben.
einer Anderer liesst Daten aus der "
DB 1" und syncronisiert diese übers Inet mit einem Server.
Der Dienst hat die Berechtigung zur Interaktion mit dem Desktop und verbindet sich via
BDE zur Datenbank.
Jeder Thread hat seine eigene
DB-Verbindung, welche Dynamisch erzeugt und freigegeben wird !
Jetzt gibt es noch das
GUI-Interface mit dem die Kunden auf der Datenbank(
DB 1) arbeiten,
manchmal kommt es jetzt vor das die Kunden keine Änderungen an den Datensätzen mehr vornehmen können.
So wie's scheint bekommt die
Query keine ErrorMessage nur die Daten bleiben unverändert.
Konnte das ganze bei mir noch nicht reproduzieren, aber Kunden die dieses Problem haben konnten mir keine Fehlermeldung nennen.
Ein Neustart des Rechners bringt wie so oft Abhilfe.
Hat irgentjemand eine Ahnung warum die Datenbank in eine Art "Locked" Zustand übergeht und der Dienst dabei scheinbar noch schreiben kann ?! Kann es an den Threads liegen ? An den mehrfachen
DB Verbindungen die teilweise auf gleichen Tables Daten ändern ?
Oder ist das Problem bei der
BDE zu suchen ? Den Diwnst könnte ich auf direkten Zugriff umstellen; das
GUI-Interface nicht ohne weiteres.
Bin für jeden Tipp dankbar,
Greetz Data
Der Horizont vieler Menschen ist ein Kreis mit Radius Null, und das nennen sie ihren Standpunkt.