Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Firebird, InterBase Новый топик    Ответить
 gfix -shut -full -force базу вырубает, а ранний коннект к ней (из IBE) - НЕТ. why ???  [new]
Таблоид
Member

Откуда:
Сообщений: 9456
Блог
hi all.
Имеется firebirdcs-2.1.3.18185-0.i686, Linux 2.6.18-53.el5.
Создаю .sh, принудительно переводящий БД в оффлайн:

#!/bin/sh
FBPATH=/opt/firebird
FBUSER=SYSDBA
FBPASS=******
FBDATABASE=/var/db/firebird/test.fdb
$FBPATH/bin/gfix -user $FBUSER -password $FBPASS $FBDATABASE -shut full -force 3

ДО запуска этого .sh открыл базу в IB Expert, открыл таблицу, сделал в ней update энного числа строк БЕЗ коммита.

В putty запустил скрипт, он отработал Ок.

Пытаюсь приконнектиться в НОВОМ окне к базе - получаю отруб, т.е. всё правильно.

Возвращаюсь в первое окно с открытым там IBE, делаю commit - и он ОТРАБАТЫВАЕТ как ни в чём не бывало, ничего не сообщив (т.е. как будто база в онлайне).
Открываю в нём новое окно SQL Editor'a, делаю там выборку - тоже всё Ок.
Короче, этот первый коннект вроде бы "не понимает", что база вырублена.

Причина этого, конечно, интересна, но самое интересное сейчас - как ГАРАНТИРОВАННО перевести базу в оффлайн, даже когда к ней кто-то подключен через IBE ?
24 ноя 09, 16:29    [7971932]     Ответить | Цитировать Сообщить модератору
 Re: gfix -shut -full -force базу вырубает, а ранний коннект к ней (из IBE) - НЕТ. why ???  [new]
Таблоид
Member

Откуда:
Сообщений: 9456
Блог
PS. По прошествии примерно 2-3 минут в IBE всё-таки "что-то" сработало и он отрубил коннект. Но почему так долго ?
24 ноя 09, 16:31    [7971961]     Ответить | Цитировать Сообщить модератору
 Re: gfix -shut -full -force базу вырубает, а ранний коннект к ней (из IBE) - НЕТ. why ???  [new]
Таблоид
Member

Откуда:
Сообщений: 9456
Блог
PPS. Еще один результат:
$FBPATH/bin/gfix -user $FBUSER -password $FBPASS $FBDATABASE -shut full -force 0 - отработал так, как и ожидалось, и "первый коннект" тут же понял, что база уснула.
Что означает число, указываемое после force ? может, это не секунды, а минуты ?
24 ноя 09, 16:35    [7972000]     Ответить | Цитировать Сообщить модератору
 Re: gfix -shut -full -force базу вырубает, а ранний коннект к ней (из IBE) - НЕТ. why ???  [new]
hvlad
Member

Откуда:
Сообщений: 10331
До v2.5 shutdown не убивает коннекты.
Он только не даёт им работать.
Коннект должно закрыть приложение, получившее isc_shutdown.
Или не должно - по вкусу разработчика.
24 ноя 09, 16:39    [7972044]     Ответить | Цитировать Сообщить модератору
 Re: gfix -shut -full -force базу вырубает, а ранний коннект к ней (из IBE) - НЕТ. why ???  [new]
Таблоид
Member

Откуда:
Сообщений: 9456
Блог
hvlad
До v2.5 shutdown не убивает коннекты.
Он только не даёт им работать.
Коннект должно закрыть приложение, получившее isc_shutdown.
Или не должно - по вкусу разработчика.
да, но тогда почему "не даёт работать" действует уже в 2.1.* при указании force 0 ?
OFFTOP. 2 hvlad: когда ожидается 2.5 офиц. релиз ?
24 ноя 09, 16:45    [7972119]     Ответить | Цитировать Сообщить модератору
 Re: gfix -shut -full -force базу вырубает, а ранний коннект к ней (из IBE) - НЕТ. why ???  [new]
hvlad
Member

Откуда:
Сообщений: 10331
Таблоид
да, но тогда почему "не даёт работать" действует уже в 2.1.* при указании force 0 ?
Вопрос не понял.

Таблоид
OFFTOP. 2 hvlad: когда ожидается 2.5 офиц. релиз ?
Минимум через месяц после RC2.
RC1 должен выйти на днях
24 ноя 09, 16:47    [7972140]     Ответить | Цитировать Сообщить модератору
 Re: gfix -shut -full -force базу вырубает, а ранний коннект к ней (из IBE) - НЕТ. why ???  [new]
Таблоид
Member

Откуда:
Сообщений: 9456
Блог
hvlad
Таблоид
да, но тогда почему "не даёт работать" действует уже в 2.1.* при указании force 0 ?
Вопрос не понял.
ну, ты же говоришь, что "До v2.5 shutdown не убивает коннекты. Он только не даёт им работать." А получается, что при указании -force 0 коннекту действительно "не дают работать" - сразу, без всяких таймаутов. И происходит это НЕ в 2.5, а в 2.1.3.*
24 ноя 09, 16:54    [7972205]     Ответить | Цитировать Сообщить модератору
 Re: gfix -shut -full -force базу вырубает, а ранний коннект к ней (из IBE) - НЕТ. why ???  [new]
arni
Member

Откуда: Иваново
Сообщений: 3544
Таблоид,

2.1 - не даёт работать
2.5 - убивает
что не так? как в доке, так и вашем случае.
24 ноя 09, 16:57    [7972244]     Ответить | Цитировать Сообщить модератору
 Re: gfix -shut -full -force базу вырубает, а ранний коннект к ней (из IBE) - НЕТ. why ???  [new]
Таблоид
Member

Откуда:
Сообщений: 9456
Блог
arni,

2.1.3 "не даёт работать" - только при указании -force 0. Если указать -force 3 (см стартовый пост), то даёт работать еще несколько минут (НЕ секунд, а именно МИНУТ). Соб-сно, hvlad всё понятно объяснил, просто буду помнить про этот нюанс с числом, которое надо указывать после -force (применительно к 2.1.3)
24 ноя 09, 16:59    [7972273]     Ответить | Цитировать Сообщить модератору
 Re: gfix -shut -full -force базу вырубает, а ранний коннект к ней (из IBE) - НЕТ. why ???  [new]
hvlad
Member

Откуда:
Сообщений: 10331
force останавливает текущую работу в активных тр-циях и даёт им доработать указанное время.
Без force шатдаун может и обломаться, если есть активные тр-ции.
24 ноя 09, 17:05    [7972336]     Ответить | Цитировать Сообщить модератору
 Re: gfix -shut -full -force базу вырубает, а ранний коннект к ней (из IBE) - НЕТ. why ???  [new]
arni
Member

Откуда: Иваново
Сообщений: 3544
Таблоид,

согласно доке Firebird's gfix Database Housekeeping tool таймаут в секундах задается
24 ноя 09, 17:05    [7972338]     Ответить | Цитировать Сообщить модератору
 Re: gfix -shut -full -force базу вырубает, а ранний коннект к ней (из IBE) - НЕТ. why ???  [new]
Таблоид
Member

Откуда:
Сообщений: 9456
Блог
arni,

дык я и ожидал, что через 5 сек работа станет невозможной.
Ладно, всё прояснилось. Всем спасибо за ответы.
24 ноя 09, 17:16    [7972406]     Ответить | Цитировать Сообщить модератору
 Re: gfix -shut -full -force базу вырубает, а ранний коннект к ней (из IBE) - НЕТ. why ???  [new]
dimitr
Member

Откуда: PNZ
Сообщений: 6854
на классике ненулевой force всегда как-то мутно работал... или не работал... :-)
24 ноя 09, 20:11    [7973194]     Ответить | Цитировать Сообщить модератору
Все форумы / Firebird, InterBase Ответить