Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / IBExpert Новый топик    Ответить
 [off] Про извлечение метаданных и совместимость версий Firebird  [new]
o_v_a
Member

Откуда: Тула
Сообщений: 1087
В ходе четверговой послеобеденной рефлексии на тему "житие мое..."

Разработка у нас переведена на Firebird 3.0.
Там идёт и разработка, и тестирование новых фич в том числе и новшеств FB 3.0, но в бой их пока не выпускаем. Это всё в недалёкое будущее делается пока. Может, FB 3.0 даже и пропустим, ждём FB 4.0 с #репликацияизкаропки.
Текущие релизы закрываем на 3.0 без использования специфичного для FB 3.0 синтаксиса ( у нас соооовсеееем недавно только с пару-тройку лет как совместимость с 1.5 отпала по ненадобности, всех на 2.5 перетащили).

Но у клиентов базы пока крутятся под FB 2.5 и после извлечения метаданных из эталонной базы на FB 3.0 и генерации разностного скрипта между эталонным скриптом и метаданными базы клиента в разностный скрипт таки лезут специфичные для FB 3.0 в отличие от FB 2.5 операторы:
GRANT USAGE
GRANT EXECUTE ON FUNCTION
CREATE GENERATOR XXX START_WITH 0 INCREMENT BY 1

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

Вопрос: не планируется ли в функциональности IBExpert ввести какую-то синтаксическую проверку на совместимость полученного скрипта с версией целевого сервера? Ведь синтаксический анализ в SQL-редакторе учитывается на основе информации о версии сервера в регистрационной информации базы, лишнего не напишешь. А можно как-то прикрутить его к редактору скриптов - к целому скрипту?

Тестовое выполнение скрипта на тестовой базе на тестовом сервере не предлагать - это очевидно, ибо так грабли и были пойманы.

--
"И это пройдет"
25 окт 18, 15:50    [21715000]     Ответить | Цитировать Сообщить модератору
 Re: [off] Про извлечение метаданных и совместимость версий Firebird  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 2816
o_v_a
Вопрос: не планируется ли в функциональности IBExpert ввести какую-то синтаксическую проверку на совместимость полученного скрипта с версией целевого сервера? Ведь синтаксический анализ в SQL-редакторе учитывается на основе информации о версии сервера в регистрационной информации базы, лишнего не напишешь. А можно как-то прикрутить его к редактору скриптов - к целому скрипту?


Теоретически можно, практически парсер в скриптере анализирует операторы очень поверхностно. В SQL редакторе тоже полный синтаксический анализ не делается - пиши, что хочешь.

Ну и сравнивать базы с разным синтаксисом - это какое-то садо-мазо.
26 окт 18, 04:12    [21715533]     Ответить | Цитировать Сообщить модератору
 Re: [off] Про извлечение метаданных и совместимость версий Firebird  [new]
o_v_a
Member

Откуда: Тула
Сообщений: 1087
Так в том-то и дело, что база-то фактически просто бэкапнутая на 2.5 и ресторнутая на 3.0.
Никакого специфического синтаксиса для 3.0 "вручную" специально не прописывалось.
Извлечение метаданных и сравнение структуры базы клиента с эталонным скриптом делаю через ibescript.
А вылезли вот новшества по правам и по начальным значениям генераторов.

Не, я без претензий. Говорю ж - просто по-дедовски поворчать :)
Я знал, на что шёл, чай "не первый раз замужем".

P.S. С пятницей!
26 окт 18, 08:28    [21715592]     Ответить | Цитировать Сообщить модератору
 Re: [off] Про извлечение метаданных и совместимость версий Firebird  [new]
Симонов Денис
Member

Откуда: Рязань
Сообщений: 10228
o_v_a, IBExpert

ну по генераторам, наверное можно и отключить генерацию START_WITH и INCREMENT BY если они стандартные (равно 0 и 1).
26 окт 18, 08:39    [21715601]     Ответить | Цитировать Сообщить модератору
 Re: [off] Про извлечение метаданных и совместимость версий Firebird  [new]
Ivan_Pisarevsky
Member

Откуда: НН
Сообщений: 8437
Что мешает держать эталон на 2.5?

А права на все генераторы и эксепшены давать на тестовой трешке паблику. Тупо под конец, принудительно.
Ну по крайней мере сам так делаю, тоже в работе 2.5 а тестирую на трешке.
28 окт 18, 22:32    [21717486]     Ответить | Цитировать Сообщить модератору
 Re: [off] Про извлечение метаданных и совместимость версий Firebird  [new]
o_v_a
Member

Откуда: Тула
Сообщений: 1087
Держать-то на 2.5 можно, но на том серваке под линухом 3.0 крутится и сервак достаточно боевой.
И у меня на локале тоже 3.0 крутится в спарке с FBDG с бэкапами-тестовыми ресторами.
А разбираться как поднять одновременно 2.5 и 3.0 под линухом на разных портах мне откровенно влом и стопорить рабочие сервисы в случае неудачных конфигураций нежелательно. В общем, что имею, то имею. О том и пишу :)
Всё в порядке обсуждения - не более. Проблемы все обойдены, срочности нет никакой.
29 окт 18, 13:54    [21717963]     Ответить | Цитировать Сообщить модератору
 Re: [off] Про извлечение метаданных и совместимость версий Firebird  [new]
Ivan_Pisarevsky
Member

Откуда: НН
Сообщений: 8437
o_v_a
А разбираться как поднять одновременно 2.5 и 3.0 под линухом на разных портах
Самый действенный вариант собрать РПМку с нужными префиксами самому, там прописать порт, каталог установки, каталоги для конфигов, секурити и т.п.
29 окт 18, 20:24    [21718390]     Ответить | Цитировать Сообщить модератору
Все форумы / IBExpert Ответить