Search
Write a publication
Pull to refresh

Comments 4

А с данными-то что будет при rollback колонки таблицы? Rollback поддерживается на уровне структуры в момент внедрения и в ситуации, когда можно/нужно откатить изменение, если оно не собралось на проде

Будет то, что вы пропишите.

Если упростить, то Liquibase выполняет в порядке очереди то, что вы указали. Соответственно если у вас есть данные и не стоит никаких ограничений, то данные удалятся. А иначе нет.

А по факту, такие операции надо тестировать в вашей БД, возможно понадобится добавить больше ALTER конструкций.

пара вопросов, если позволите.

1) как или откуда скачать дистрибутив ликвидбейса, если официальный сайт в "амазон клауде" и он блокирует получение файлов ? и.е. виндовый дистрибутив с официального сайта не получить

2) я правильно понимаю, что Liquibase не умеет контролировать/запоминать текущую, целевую структуру таблиц, и восстанавливать её, если что-то пошло не так? т.е. он "тупо шпарит патчи" и контролирует их выполнение, не понимая, надо ли для текущей структуры применять патч или нет, даже если это не sql, а опция " - createtable " в yaml-файле с ченджлогом?

т.е. если в работу с таблицами ликвидбейса вмешалась третья сторона или "что-то пошло не так" - мы получаем долгий изнурительный процесс восстановления структуры руками?

поясню на примере: вот прошла миграция, всё патчи/ченджлоги ликвидбейзом применены. теперь какой-то сторонний инструмент удаляет из базы таблицу. ну, так случилось. запускаем систему спрингбут с ликвидбейзом, он при старте проверяет что всё патчи применены, пишет всё хорошо, а потом мы получаем исключения при выполнении запросов, что relation в базе не существует.

как заставить ликвидбейз проверять целевую структуру бд, сравнивать её с целевой и применять изменения фрагментарно ? например - восстановить таблицу если она была "случайно" удалена?

----------

заранее спасибо.

UPD: скачивание дистрибутивов https://www.liquibase.com/open-source они вроде поправили. вопрос 1 отпадает. но что делать со вторым пунктом?

Sign up to leave a comment.

Articles