Прблема с восстановлением nbackup

Методы, механизмы и инструментарий для репликации

Модератор: kdv

D12
Сообщения: 10
Зарегистрирован: 20 июн 2008, 16:31

Прблема с восстановлением nbackup

Сообщение D12 » 20 июн 2008, 16:40

При восстановлении даной утилитой инкрементной БД (если бэкапы выше 0-го уровня) не появляются новые (insert) записи а измененные (update) видны. Размер базы с исходной совпадает. В чем может быть проблема?

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Сообщение kdv » 20 июн 2008, 19:40

а поподробнее?

p.s. на теле прыщ. на чьем теле, какого цвета, в каком месте и какого размера - не скажу.

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

Сообщение WildSery » 20 июн 2008, 21:01

Пытался вникнуть во фразу "в бэкапе новые записи не видны".
Чуть мозг не вывихнул. Откуда они там могут возникнуть? (задумчиво глядит в потолок)

hvlad
Разработчик Firebird
Сообщения: 1244
Зарегистрирован: 21 мар 2005, 10:48

Сообщение hvlad » 20 июн 2008, 22:08

Версия сервера ?

Похоже на CORE-1876

Attid
Спец
Сообщения: 377
Зарегистрирован: 14 ноя 2006, 09:58

Сообщение Attid » 22 июн 2008, 13:19

говорила мне мама . . .


сижу читаю форум , бездельничаю выходной все таки, и тут этот топик, давно хотел нбекап попробвать, почитал доку

база на 500 метров, бекапится влет =) , решил проверить чтоже будет если запустить 2 бекапа

Код: Выделить всё

date && sudo nbackup-2.0 -B 0 ac /tmp/ac4.nbk & sudo nbackup-2.0 -B 0 ac /tmp/ac5.nbk && date
получил отлуп

Код: Выделить всё

[
PROBLEM ON "begin backup".
unsuccessful metadata update
-Database is already in the physical backup mode
SQLCODE:-607
]
и теперь все время получаю отлуп =( дельта висит.

вопрос, как мне от нее избавится ?
попробовать

Код: Выделить всё

nbackup -N <база_данных>
??
сервер 2,0,4
дельта не увеличивается, просто весит.

hvlad
Разработчик Firebird
Сообщения: 1244
Зарегистрирован: 21 мар 2005, 10:48

Сообщение hvlad » 22 июн 2008, 15:13

Что, оба экземпляра nbackup это сказали ?

Убедись, что никто из них не висит, сделай файловую копию файла БД (на всякийслучай) и уже потом - nbackup -N

Attid
Спец
Сообщения: 377
Зарегистрирован: 14 ноя 2006, 09:58

Сообщение Attid » 23 июн 2008, 02:53

hvlad писал(а):Что, оба экземпляра nbackup это сказали ?
нет только один, второй отыграл и вышел.

до ключика -N не успел дойти вечером сделали бекап и поставили обновление структуры , на моменте толи шотдауна , толи обновления методаных, база свалилась с ошибками , разбираться не стали ушли на бакап. вроде все данные на месте.

как буду скучать еще раз попробую повторить на базе с нагрузкой =)

D12
Сообщения: 10
Зарегистрирован: 20 июн 2008, 16:31

Сообщение D12 » 24 июн 2008, 11:35

hvlad писал(а):Версия сервера ?

Похоже на CORE-1876
Проверял на 2.0.0 и 2.0.4
Спасибо, скорее всего действительно в этом проблема.

hvlad
Разработчик Firebird
Сообщения: 1244
Зарегистрирован: 21 мар 2005, 10:48

Сообщение hvlad » 24 июн 2008, 12:00

D12 писал(а):
hvlad писал(а):Версия сервера ?

Похоже на CORE-1876
Проверял на 2.0.0 и 2.0.4
Спасибо, скорее всего действительно в этом проблема.
CORE-1876 относится к 2.1.0, в 2.0.х этой баги не было.

Правда 2.0.4 имеет исправления других ошибок в nbackup

D12
Сообщения: 10
Зарегистрирован: 20 июн 2008, 16:31

Сообщение D12 » 24 июн 2008, 20:01

hvlad писал(а):
D12 писал(а):
hvlad писал(а):Версия сервера ?

Похоже на CORE-1876
Проверял на 2.0.0 и 2.0.4
Спасибо, скорее всего действительно в этом проблема.
CORE-1876 относится к 2.1.0, в 2.0.х этой баги не было.

Правда 2.0.4 имеет исправления других ошибок в nbackup
еще такой ньюанс - если для полученной базы сделать в IBExpert backup\restore, то записи появляются.

hvlad
Разработчик Firebird
Сообщения: 1244
Зарегистрирован: 21 мар 2005, 10:48

Сообщение hvlad » 24 июн 2008, 21:18

D12 писал(а):еще такой ньюанс - если для полученной базы сделать в IBExpert backup\restore, то записи появляются.
А вот это уже говорит о проблемах в консерватории, а не в FB

D12
Сообщения: 10
Зарегистрирован: 20 июн 2008, 16:31

Сообщение D12 » 25 июн 2008, 12:03

hvlad писал(а):
D12 писал(а):еще такой ньюанс - если для полученной базы сделать в IBExpert backup\restore, то записи появляются.
А вот это уже говорит о проблемах в консерватории, а не в FB
это в каком смысле? неправильно передаю параметры в nbackup?

hvlad
Разработчик Firebird
Сообщения: 1244
Зарегистрирован: 21 мар 2005, 10:48

Сообщение hvlad » 25 июн 2008, 13:27

Для начала точно опиши что делаешь и что получаешь.

D12
Сообщения: 10
Зарегистрирован: 20 июн 2008, 16:31

Сообщение D12 » 25 июн 2008, 14:20

hvlad писал(а):Для начала точно опиши что делаешь и что получаешь.
делаю бекап базы 0-го уровня.
в своей программе изменяю и инсертю данные.
делаю бекап 1-го уровня.
восстанавливаю через nbackup базу в новый файл.
в новой базе update-записи есть а insert-записей нет (после бекап\ресторе новой базы появляются и они тоже).

hvlad
Разработчик Firebird
Сообщения: 1244
Зарегистрирован: 21 мар 2005, 10:48

Сообщение hvlad » 25 июн 2008, 15:27

D12 писал(а):
hvlad писал(а):Для начала точно опиши что делаешь и что получаешь.
делаю бекап базы 0-го уровня.
в своей программе изменяю и инсертю данные.
делаю бекап 1-го уровня.
восстанавливаю через nbackup базу в новый файл.
в новой базе update-записи есть а insert-записей нет (после бекап\ресторе новой базы появляются и они тоже).
Как восстанавливаешь БД из бекапа ?
Как ищешь новые записи в восстановленной БД и как обновлённые ?
Я не вижу в этом описании ни одного коммита.

D12
Сообщения: 10
Зарегистрирован: 20 июн 2008, 16:31

Сообщение D12 » 25 июн 2008, 16:10

hvlad писал(а): Как восстанавливаешь БД из бекапа ?
Как ищешь новые записи в восстановленной БД и как обновлённые ?
Я не вижу в этом описании ни одного коммита.
восстанавливаю командой:
nbackup -u sysdba -p masterkey -r newbase.fdb level0.nbk level1.nbk
записи ищу и в программе и в таблицах через IBExpert.
коммит делается в программе, перед бекапом или восстановлением ее закрываю.

hvlad
Разработчик Firebird
Сообщения: 1244
Зарегистрирован: 21 мар 2005, 10:48

Сообщение hvlad » 25 июн 2008, 17:22

tx1 update
tx2 insert
tx1 commit
tx3 begin backup
tx2 commit
tx3 commit

Вопрос на засыпку - что будет видно в оригинальной БД, а что - в восстановленной ?

PS Я в пустоту больше писать не буду.

D12
Сообщения: 10
Зарегистрирован: 20 июн 2008, 16:31

Сообщение D12 » 25 июн 2008, 18:22

hvlad писал(а):tx1 update
tx2 insert
tx1 commit
tx3 begin backup
tx2 commit
tx3 commit

Вопрос на засыпку - что будет видно в оригинальной БД, а что - в восстановленной ?

PS Я в пустоту больше писать не буду.
в оригинальной будет tx1 и tx2, в восстановленной только tx1.
но у меня получается ситуация
tx1 update
tx2 insert
tx1 commit
tx2 commit
tx3 begin backup
tx3 commit
вообщем сори если задолбал, закроем эту тему.

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Сообщение kdv » 25 июн 2008, 18:43

ты точно уверен, что после вставки данных делается коммит? Не пробовал отключить все приложения, после этого сделать инкремент, и посмотреть, что будет в этом случае?
Просто диалог какой-то странный. Подробности из тебя тянуть надо, тебе самому, похоже, такие странные глюки пофиг, и т.д.

Ведь вставленные записи они видны по commit. Если они не видны при ресторе инкремента, значит
а) вставленные записи не попали в инкремент
б) не попало в инкремент изменение состояния транзакции (в коммит), в которой записи были вставлены

И, разумеется, если записей не видно, то после b/r эти записи никак не могут стать видимыми. Потому что backup - это та же самая твоя аппликуха, которая стартует транзакцию и читает данные. А если она их не видит, значит никакая другая транзакция эти записи тоже видеть не может в принципе.
Я здесь допускаю только один вариант - в оригинальной базе битый индекс. Т.е. при ресторе индекс создается заново, и записи попадают в выборку по индексу.

hvlad
Разработчик Firebird
Сообщения: 1244
Зарегистрирован: 21 мар 2005, 10:48

Сообщение hvlad » 25 июн 2008, 19:32

D12 писал(а):вообщем сори если задолбал, закроем эту тему.
Меня не так легко задолбать. Но не отвечать на вопросы - один из способов.

Ответить