Hallo zusammen
ich verwende Firebird 2.5 und programmiere in C#.
Für den Zugriff verwende ich FirebirdSql.Data.FirebirdClient 8.4.2
Ich erhalte ie Meldung "too many open handles to database"
Mir ist unklar warum, ich öffne und schließe den Zugriff zur Datenbank,
Dann sollten alle Handles und Transaktionen zurückgesetzt werden.
- Was kann ich tun?
- Wie kann ich sehen wie viele Handles geöffnet sind?
Too many open handles to database
Moderator: martin.koeditz
Ich hatte auch ein Problem mit der Assembly bzgl. Pooling.
Wenn man das abschaltet "Pooling=No;", klappt es auch.
Bei Pooling wird die Verbindung nicht tatsächlich geschlossen sondern in den Pool gestellt und bei derselber Konfiguration wieder verwendet.
Die Poolsize ist, glaube ich, auf 50 beschränkt.
Mit dem Widerverwenden hat die Assembly jedoch ein Problem.
Nachtrag:
Aus Performance-Gründen sollte man eine Verbindung immer offen halten um den Cache des DB-Servers zu erhalten. Wenn der letzte Close zu einer DB gemacht wird, verschwindet auch der Cache des Servers und das nächste Öffnen dauert etwas länger.
Wenn man das abschaltet "Pooling=No;", klappt es auch.
Bei Pooling wird die Verbindung nicht tatsächlich geschlossen sondern in den Pool gestellt und bei derselber Konfiguration wieder verwendet.
Die Poolsize ist, glaube ich, auf 50 beschränkt.
Mit dem Widerverwenden hat die Assembly jedoch ein Problem.
Nachtrag:
Aus Performance-Gründen sollte man eine Verbindung immer offen halten um den Cache des DB-Servers zu erhalten. Wenn der letzte Close zu einer DB gemacht wird, verschwindet auch der Cache des Servers und das nächste Öffnen dauert etwas länger.
-
- Beiträge: 4
- Registriert: Mo 27. Mär 2023, 11:39
Wo stellt man das Pooling=No ein