Thread View: pl.comp.lang.delphi.bazy-danych
4 messages
4 total messages
Started by Sławek
Mon, 08 Jul 2019 16:34
Firebird embedded -jak skutecznie zlikwidować połączenie
Author: Sławek
Date: Mon, 08 Jul 2019 16:34
Date: Mon, 08 Jul 2019 16:34
33 lines
2619 bytes
2619 bytes
Szanowni Grupowicze, mam aplikację desktop Delphi2010 wykorzystującą bazę danych Firebird 3.0. Chcę wykonywać tymczasowe kopie bezpieczeństwa. Jeżeli korzystam z zainstalowanego serwera to wszystko działa. Problem jest z wersją embedded. Ponieważ w takim układzie może być aktywne tylko jedno połączenie to przed wywołaniem procedury Backup zamykam bazę a później ponownie ją otwieram. Niestety Wygląda na to, że połączenie jest aktywne jeszcze 60 sekund po zamknięciu bazy. Tak samo jest z połączeniem po wywołaniu IBBackupService. W skrócie to wygląda tak: IBDatabase1.Connected := True; ... praca z programem ... IBDatabase1.Connected := False; IBBackupService1 - wykonuję backup i na koniec IBBackupService1.Free IBDatabase1.Connected := True; ..po 60 sekundach otrzymuję komunikat "Connection shutdown" i praca z programem nie jest możliwa. Sprawdziłem, że jeżeli zostawię 60-sekundowe odstępy: pierwszy - po IBDatabase1.Connected := False; drugi - po IBBackupService1 wykonuję backup to problemu nie ma. Czy jest jakiś sposób, żeby połączenia zamykać szybciej? Próbowałem z TIBConfigService wykonać ... ShutdownDatabase(Forced,0); - bez rezultatu. Zmuszenie użytkownika, żeby 2 minuty sobie poczekał nie wydaje mi się dobrym rozwiązaniem. ;-) -- Pozdrawiam i z góry dziękuję za wszelką pomoc, Sławek
Re: Firebird embedded -jak skutecznie zlikwidować połączenie
Author: Roman Tyczka
Date: Mon, 08 Jul 2019 19:41
Date: Mon, 08 Jul 2019 19:41
45 lines
2703 bytes
2703 bytes
On Mon, 8 Jul 2019 18:34:29 +0200, Sławek wrote: > Szanowni Grupowicze, > mam aplikację desktop Delphi2010 wykorzystującą bazę danych Firebird 3.0. > Chcę wykonywać tymczasowe kopie bezpieczeństwa. Jeżeli korzystam z > zainstalowanego serwera to wszystko działa. Problem jest z wersją > embedded. Ponieważ w takim układzie może być aktywne tylko jedno > połączenie to przed wywołaniem procedury Backup zamykam bazę a później > ponownie ją otwieram. Niestety Wygląda na to, że połączenie jest aktywne > jeszcze 60 sekund po zamknięciu bazy. Tak samo jest z połączeniem po > wywołaniu IBBackupService. W skrócie to wygląda tak: > > IBDatabase1.Connected := True; > ... > praca z programem > ... > IBDatabase1.Connected := False; > IBBackupService1 - wykonuję backup i na koniec IBBackupService1.Free > IBDatabase1.Connected := True; > ..po 60 sekundach otrzymuję komunikat "Connection shutdown" i praca z > programem nie jest możliwa. > > Sprawdziłem, że jeżeli zostawię 60-sekundowe odstępy: > pierwszy - po IBDatabase1.Connected := False; > drugi - po IBBackupService1 wykonuję backup > to problemu nie ma. > Czy jest jakiś sposób, żeby połączenia zamykać szybciej? > Próbowałem z TIBConfigService wykonać ... ShutdownDatabase(Forced,0); > - bez rezultatu. > Zmuszenie użytkownika, żeby 2 minuty sobie poczekał nie wydaje mi się > dobrym rozwiązaniem. ;-) Czy masz najnowszy serwer, wersję 3.0.4? Bo były jakieś błędy z blokadą połączenia na 60 sec: http://tracker.firebirdsql.org/browse/CORE-5815 Tutaj też coś niefajnego, prawdopodobnie inny problem niż Twój, ale jest te 60 sekund podejrzane: http://tracker.firebirdsql.org/browse/CORE-5911 -- pozdrawiam Roman Tyczka
Re: Firebird embedded -jak skutecznie zlikwidować połączenie
Author: Sławek
Date: Tue, 09 Jul 2019 08:14
Date: Tue, 09 Jul 2019 08:14
18 lines
1939 bytes
1939 bytes
W dniu 08-07-2019 o 21:41, Roman Tyczka pisze: > On Mon, 8 Jul 2019 18:34:29 +0200, Sławek wrote: > > Czy masz najnowszy serwer, wersję 3.0.4? > Bo były jakieś błędy z blokadą połączenia na 60 sec: > > http://tracker.firebirdsql.org/browse/CORE-5815 > > Tutaj też coś niefajnego, prawdopodobnie inny problem niż Twój, ale jest te > 60 sekund podejrzane: > > http://tracker.firebirdsql.org/browse/CORE-5911 > - dziękuję, tak, widziałem te strony. Mam najnowszy serwer, nie stosuję szyfrowania, spróbuję jeszcze 4.0 Beta 1.
Re: Firebird embedded -jak skutecznie zlikwidować połączenie
Author: Sławek
Date: Tue, 09 Jul 2019 10:03
Date: Tue, 09 Jul 2019 10:03
32 lines
2106 bytes
2106 bytes
W dniu 09-07-2019 o 10:14, Sławek pisze: > W dniu 08-07-2019 o 21:41, Roman Tyczka pisze: > > On Mon, 8 Jul 2019 18:34:29 +0200, Sławek wrote: > > > > > Czy masz najnowszy serwer, wersję 3.0.4? > > Bo były jakieś błędy z blokadą połączenia na 60 sec: > > > > http://tracker.firebirdsql.org/browse/CORE-5815 > > > > Tutaj też coś niefajnego, prawdopodobnie inny problem niż Twój, ale > jest te > > 60 sekund podejrzane: > > > > http://tracker.firebirdsql.org/browse/CORE-5911 > > > > - dziękuję, tak, widziałem te strony. Mam najnowszy serwer, nie stosuję > szyfrowania, spróbuję jeszcze 4.0 Beta 1. - no więc dałem się zwieść informacji: Fix Version/s: 3.0.4, 4.0 Beta 1 a to nie do końca prawda. W 4.0 Beta 1 problem nie występuje. Jeszcze raz dziękuję za podpowiedź, to był dodatkowy impuls, żeby przetestować FB4. (miałem już pobrane :) Teraz wątek przenoszę do http://tracker.firebirdsql.org/ -- Pozdrawiam, Sławek
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads