Нужно при востановлении базы, если возникает ошибка удалить ее и вернуть из копии старую.
Если срабатывает ошибка делаю pFIBRestoreService->Detach(). Но оно ругается что сервис не Attach, и файл с базой остается занять процесом.
Не подскажите в чем я не прав?
BDS2006 (c++Builder)+FIB6.45.0
Не срабатывае pFIBRestoreService->Detach()
Модератор: kdv
-
- Заслуженный разработчик
- Сообщения: 1436
- Зарегистрирован: 15 сен 2005, 09:05
Хочу просто перепаковать базу. Делаю бэкап и сразу же востанавливаю, но с какой то причины возникает ошибка, вот поэтому мне и нужно вернуть старый файлик с базой обратно (до востановления просто переименовал).Dimitry Sibiryakov писал(а):Восстановление нормальные люди делают только если база потеряна. Соответственно копировать "старую" неоткуда.
Да и проблема не в файлике, а всамом сервисе, при возникновении ошибки не могу его остановить, вот и получается что файл у меня все время залочен.
-
- Заслуженный разработчик
- Сообщения: 1436
- Зарегистрирован: 15 сен 2005, 09:05
В морг твою перепаковку. Если с базой нормально работать она ни в какой перепаковке не нуждается на протяжении как минимум пары миллиардов транзакций. Но и тогда лучше все делать аккуратно, ручками.
То что сервер держит восстановленную базу - его право. Я не знаю какая уж там у тебя ошибка происходит (хрустальный шар отказал), но баги есть баги...
То что сервер держит восстановленную базу - его право. Я не знаю какая уж там у тебя ошибка происходит (хрустальный шар отказал), но баги есть баги...