Страница 1 из 1
Детали gfix -shut
Добавлено: 22 апр 2005, 11:08
SAMZ
Уважаемые коллеги!
Подскажите где можно найти подробное описание того, как выполняется gfix -shut
Конкретно интересует обеспечивается ли при этом нормальное завершение клиентских процессо, сборка мусора, если в этот моментт она имеет место. Есть ли разницы в отработке этой утилиты для конфигурации CS и SS
Добавлено: 22 апр 2005, 11:20
kdv
клиентские процессы не завершаются. блокируется их работа.
в общем, все это сделано более правильно и корректно в FB2.
Добавлено: 22 апр 2005, 11:29
SAMZ
kdv писал(а):клиентские процессы не завершаются. блокируется их работа.
в общем, все это сделано более правильно и корректно в FB2.
Сформулирую вопрос по другому. Если необходимо всех выгнать и остановить на некоторое время FireBird, как это лучше сделать и, в какой конфигурации это легче делать CS или SS или все равно
Добавлено: 04 май 2005, 12:36
DSKalugin
1 gfix -shut <база>
2 net send * "Покурите 15мин, база недоступна"
3 обрезаем всех юзеров файерволом
4 делаем че надо
5 gfix -online <база>
6 разрешаем опять подключение файерволом
7 net send * "Можно продолжать, база доступна"
все пункты оформить в один сценарий
Добавлено: 05 май 2005, 02:09
Данилов Юрий
DSKalugin писал(а):1 gfix -shut <база>
База в дауне. Установленные коннекты - блокированы? работают?
2 net send * "Покурите 15мин, база недоступна"
3 обрезаем всех юзеров файерволом
Юзера все обрезаны. Кошерно

Так что с коннектами? оборваны? Что с приложениями? Как они в общем случае среагируют? Как насчет CS и SS?
4 делаем че надо
5 gfix -online <база>
6 разрешаем опять подключение файерволом
Здесь в зависимости от ответов на предыдущие вопросы. Понятно, что
новые коннекты пойдут, а старые?
7 net send * "Можно продолжать, база доступна"
все пункты оформить в один сценарий
К этому пункту претензий нет. Не люблю слово "сценарий", но, во-первых, это так называется у MS, во-вторых, мало ли кто чего не любит...
Просто как-то роднее и ласковей звучит "батничек"

Добавлено: 05 май 2005, 12:23
DSKalugin
Данилов Юрий писал(а):
База в дауне. Установленные коннекты - блокированы? работают?
конечно блокированы
Данилов Юрий писал(а):
Юзера все обрезаны. Кошерно

Так что с коннектами? оборваны? Что с приложениями? Как они в общем случае среагируют? Как насчет CS и SS?
Коннекты оборваны, приложения отреагируют взависимости от используемых компонент. В общем случае отругаются конечно же не зависимо от архитектуры сервера
Данилов Юрий писал(а):Понятно, что новые коннекты пойдут, а старые?
Старым амбец, приложениям необходимо переподключиться. А как ты хотел? Переколбасить всю БД и чтобы никто ничего не заметил? Волшебник, однако. Так не бывает.
Добавлено: 05 май 2005, 12:43
Merlin
Боже, как я устал ловить за яйца этого самоуверенного ламера, чтоб не загонял людей в гроб своими советами...
1. Старые коннекты НЕ оборваны. Но они не могут сделать ничего, кроме как отцепиться.
2. В некоторых билдах и IB и даже FB 1.5 старые коннекты вообще спокойно продолжают работать. Это баги, но надо всё проверять на своём сервере.
3. Shutdown вообще пофиг SYSDBA и OWNER. В билдах, не затронутых упомянутыми багами, существующие их коннекты блокируются, как и все остальные, но они тут же могут сделать новые.
то есть, если сделав shutdown, взять и скопировать базу, то вероятность того, что копия неработоспособна, очень высока. И есть некоторая вероятность, что при этом будет убита основная база.
Итог, печальный, но правда. На сегодняшний день способа вчистую принудительно завершить работу пользователей с базой просто НЕТ. Для выполнения файловых операций с базой на классике после shutdown приходится килять процессы, что всегда есть некоторый риск, в случае блокированности процесса пониженный. В супере надо остановить сервер. Что, как показывают последние изыскания, тоже есть некоторый риск, причём при наличии в это время больших объёмов некоммиченных изменений этот риск возрастает и становится даже бОльшим, чем на классике. Это относится абсолютно ко всем клонам и билдам. В FB2 обещали ситуацию существенно улучшить.
Добавлено: 05 май 2005, 13:06
DSKalugin
Merlin писал(а):Боже, как я устал ловить за яйца этого самоуверенного ламера, чтоб не загонял людей в гроб своими советами...
1. Старые коннекты НЕ оборваны. Но они не могут сделать ничего, кроме как отцепиться.
Ну вопервых не надо хамить, это прежде всего показывает твой низкий уровень культуры, нежели высокий уровень знаний. А вовторых научись наконец читать тему с начала, а не с конца. Я предлагал помимо shutdown блокировать пользователей файерволом, а это не что иное как обрывание коннектов.
Добавлено: 05 май 2005, 13:35
Merlin
DSKalugin писал(а):Merlin писал(а):Боже, как я устал ловить за яйца этого самоуверенного ламера, чтоб не загонял людей в гроб своими советами...
1. Старые коннекты НЕ оборваны. Но они не могут сделать ничего, кроме как отцепиться.
Ну вопервых не надо хамить, это прежде всего показывает твой низкий уровень культуры, нежели высокий уровень знаний.
Совершенно верно, я необразованный хам. А тебе вот сюда:
http://lleo.aha.ru/na/index.shtml
DSKalugin писал(а):
А вовторых научись наконец читать тему с начала, а не с конца. Я предлагал помимо shutdown блокировать пользователей файерволом, а это не что иное как обрывание коннектов.
А ты научись видеть дальше собственного носа, прежде чем учить людей ломать базы. Файерволом он, мля, отсёк. Ещё предложи задачи на клиентах абортировать. А про то, что серверный процесс это заметит по умолчанию через 3 минуты в случае использования dummy packets, а в случае so_keepalive в соответствии с индидуальными настройками TCP/IP (а то и вообще не заметит, если там долгоиграющий запрос, ничего не возвращающий клиенту, молотит) - в курсе? А что сборке мусора твой файервол вообще до фени? Развлекайся у себя как хош, твоё дело, слова не скажу, а людям жизнь портить прекращай.