Проблема с nbackup

Access Violation, некорректное выполнение запросов или вызовов API, ошибки утилит командной строки, в общем все, что вам мешает работать

Модераторы: kdv, dimitr

Ответить
Quasar
Сообщения: 61
Зарегистрирован: 23 дек 2005, 10:26

Проблема с nbackup

Сообщение Quasar » 17 окт 2007, 08:56

FB 2.01 CS, Win2003, Размер базы 1.5Г

Решил вынести сюда проблему из этой темы http://forum.ibase.ru/phpBB2/viewtopic.php?t=3888.

Суть проблемы состоит в том, что после резервного копирования nbackup-ом не всегда удаляется файл дельты. Точнее он таки удаляется, но не сразу, а через неопределенное время, каждый раз разное, от нескольких секунд до часов, дней.
Я начал изучать это явление и обнаружил особенность работы nbackup. Эксперимент простой. Делаю nbackup -L, создается дельта. В isql пишу COMMIT тем самым начинаю новую транзакцию. Делаю nbackup -N, дельта на месте. В isql пишу опять COMMIT, дельта исчезает. Аналогичный эксперимент провел на базе help.fdb c тем же результатом. Понятно тогда почему у меня дельта в рабочей базе иногда по долгу не исчезала, оборванный коннект и застрявшая транзакция могли привести к такому положению вещей.

Это нормальное функционирование или баг?

Quasar
Сообщения: 61
Зарегистрирован: 23 дек 2005, 10:26

Сообщение Quasar » 21 окт 2007, 11:16

Похоже что баг на Classic Server. Проверил на Super Server, работает нормально.

Quasar
Сообщения: 61
Зарегистрирован: 23 дек 2005, 10:26

Сообщение Quasar » 31 окт 2007, 16:28

Тишина..
Подскажите пожалуйста: как быть с проблемой?

WildSery
Заслуженный разработчик
Сообщения: 1738
Зарегистрирован: 05 июн 2006, 16:19

Сообщение WildSery » 31 окт 2007, 19:24

Ты уж извини, но немного тут людей, работающие с CS на Win.
Обычно либо супер, либо классик на линухе.
А я вот вообще ещё не работал с nbackup.

dimitr
Разработчик Firebird
Сообщения: 888
Зарегистрирован: 26 окт 2004, 16:20

Сообщение dimitr » 31 окт 2007, 21:51

в классике дельту разделяют все процессы. Файл удаляется после того, как все участники закроют его дескриптор. Первым это делает процесс, выполняющий END BACKUP. Остальные узнают об окончании слияния дельты лишь когда им понадобиться знать состояние страничного кеша. В случае отсутствия активности в коннекте, это может занять неопределенное время.

Quasar
Сообщения: 61
Зарегистрирован: 23 дек 2005, 10:26

Сообщение Quasar » 01 ноя 2007, 06:35

Спасибо, ясно.. Перешел бы на Super, но второй проц будет отдыхать. Да и нельзя так как данные в БД льются непрерывно, а если какой-нибудь стат запрос загрузит процесс сервера, возникнут тормоза с добавлением данных. Хотя фиг знает, еще подумаю. Придется выбирать из двух зол наименьшее: либо отказываться от nbackup, либо от преимуществ CS.

WildSery
Заслуженный разработчик
Сообщения: 1738
Зарегистрирован: 05 июн 2006, 16:19

Сообщение WildSery » 01 ноя 2007, 11:10

Ты лучше объясни, чем тебе помешал этот не сразу исчезающий файл дельты? Ну, кроме эстетического неприятия :wink:

Quasar
Сообщения: 61
Зарегистрирован: 23 дек 2005, 10:26

Сообщение Quasar » 01 ноя 2007, 14:38

WildSery писал(а):Ты лучше объясни, чем тебе помешал этот не сразу исчезающий файл дельты? Ну, кроме эстетического неприятия :wink:
Пока он не удалится, все последующие бэкапы, а у меня они ежечасные, не делаются. В последний раз бэкапы не делались 3 дня подряд. Это неприемлемо.

belov-evgenii
Сообщения: 52
Зарегистрирован: 28 сен 2007, 10:19

Сообщение belov-evgenii » 01 ноя 2007, 21:16

Фак... Значит такое поведение исправляться не будет? Только в тройке, когда ...true SMP support on SS?

dimitr
Разработчик Firebird
Сообщения: 888
Зарегистрирован: 26 окт 2004, 16:20

Сообщение dimitr » 03 ноя 2007, 11:50

где сказано, что не будет?

Ответить