Гость
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Ошибка рестора на Firebird-4.0.0.1963-0-Beta2-Win32 / 7 сообщений из 7, страница 1 из 1
17.08.2020, 23:01
    #39990421
mvb
mvb
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка рестора на Firebird-4.0.0.1963-0-Beta2-Win32
В БД была таблица DEVICES (и много других), я ее удалил (и много других), сделал бекап, на ресторе ошибка
gbak:creating indexes
gbak:committing metadata
gbak: ERROR:table DEVICES is not defined
gbak:Exiting before completion due to errors

переиндексировал перед бекапом - не помогает. Внутри FBD куча ссылок на DEVICES (и много других).
Чего еще посмотреть?
Базу могу выслать, если надо.
...
Рейтинг: 0 / 0
17.08.2020, 23:12
    #39990425
hvlad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка рестора на Firebird-4.0.0.1963-0-Beta2-Win32
mvb
Внутри FBD куча ссылок на DEVICES
Каких ссылок ? Картинки из hex-редактора - не аргумент, совсем.
...
Рейтинг: 0 / 0
18.08.2020, 06:22
    #39990433
mvb
mvb
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка рестора на Firebird-4.0.0.1963-0-Beta2-Win32
hvlad, хорошо, не ссылок - "хвостов". Почему они могли остаться после б/р в базе? И как от них избавиться?
...
Рейтинг: 0 / 0
18.08.2020, 06:35
    #39990435
mvb
mvb
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка рестора на Firebird-4.0.0.1963-0-Beta2-Win32
с рестором разобрался: в базе оставалась пакетная функция
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
function f_client_exists_device_model(client_id int, device_model_id int) returns boolean
     as
     declare variable tmp int;
     begin
       select first 1 sp.ID
       from devices d
       left join SP_DEVICE_MODEL_TREE(d.model_id) sp on 1=1
       where d.client_id = :client_id and d.is_actual
             and sp.id = :device_model_id
       into :tmp;

       return (tmp is not null);
     end


которая ссылалась на удаленную процедуру SP_DEVICE_MODEL_TREE и которая, видимо, и тащила за собой хвост из метаданных. Удалил весь пакет, б/р прошел успешно, в файле БД "хвостов" больше не наблюдается.
...
Рейтинг: 0 / 0
18.08.2020, 06:37
    #39990436
mvb
mvb
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка рестора на Firebird-4.0.0.1963-0-Beta2-Win32
т.е. проблема остается только в том, что ФБ позволяет удалить процедуру, для которой есть зависимости в пакетах.
...
Рейтинг: 0 / 0
18.08.2020, 09:40
    #39990464
hvlad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка рестора на Firebird-4.0.0.1963-0-Beta2-Win32
mvb
которая ссылалась на удаленную процедуру SP_DEVICE_MODEL_TREE
Она явно ссылается на таблицу DEVICES.

mvb
проблема остается только в том, что ФБ позволяет удалить процедуру, для которой есть зависимости в пакетах
Сильно сомневаюсь. Воспроизводимый пример поможет меня убедить и исправить этот баг.
...
Рейтинг: 0 / 0
19.08.2020, 12:07
    #39990724
mvb
mvb
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибка рестора на Firebird-4.0.0.1963-0-Beta2-Win32
hvlad,

сорри, кажется я в трех соснах заплутал с версиями ФБ, отсюда и странные глюки. Пока вопрос снимается.
...
Рейтинг: 0 / 0
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Ошибка рестора на Firebird-4.0.0.1963-0-Beta2-Win32 / 7 сообщений из 7, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]