Changelog liquibase

Доброго времени суток!
Какие условия должны быть соблюдены для генерации нового changelog, можете пожалуйста подсказать.
Добавлены новые сущности и связи, но liquibase их не видит (у меня enterprice версия)

Здравствуйте,

Для генерации скрипта вам необходимо изменить состояние сущности JPA.

Jmix Studio создает скрипты миграции в формате Liquibase changelog, сравнивая текущее состояние сущностей JPA с текущей схемой базы данных соответствующего хранилища данных. Это происходит автоматически при запуске приложения с использованием конфигурации Run/Debug. Файл changelog сохраняется в исходном коде приложения и собирается в составе бинарного артефакта.

Документация - Миграция схемы БД :: Документация Jmix

Так же вы можете самостоятельно запустить генерацию скриптов в студии, перейдите в дерево проекта Jmix и откройте контекстное меню в разделе Data Stores → Main Data Store.
image

С Уважением,
Никита

Снимок экрана от 2023-10-31 18-08-23
Пробовал (сделал по документации)
Я очистил все changelog 22-23 года, и новую он не генерирует (база остается пустой)

Студия сравнивает текущие JPA сущности и схему вашей БД. Для того чтобы студия начала генерировать новые скрипты у вас должно быть отличие между вашей схемой БД и вашей JPA моделью. После удаления changelog’ов, схема вашей БД не изменилась.

В случае если вы хотите заново сгенерировать все скрипты, вам необходимо пересоздать вашу БД.

Data Stores → Main Data Store → Recreate
image

Но, будьте осторожны, это приведёт к удалению ваших данных.

Я очистил базу полностью и после сделал ‘recreate’ и потом ‘generate liquibase changelog’. В проекте более 200 сущностей, но выходит то сообщение, что я отправил в прошлом ответе.
photo_2023-10-31_19-24-06
Так выглядит application.properties

А можете скачать последнюю Nightly версию Jmix Studio и попробовать воспроизвести проблему на ней?

С Уважением,
Никита

1 симпатия

Спасибо!
Все получилось

1 симпатия

У меня схожая проблема, IntelliJ IDEA 2023.2.5, версия Jmix 2.1.1-232 Stable . Не генерирует скрипты changelog.
Валидная лицензия jmix, enterprise.
Физически, удалил базу.
Сделал Recreate базы - “Database has been successfully recreated.”
Сделано generate liquibase changelog - “The database is already synced with model.”
На основании entity скрипты не генерирует.
Пробовал ночную сборку jmix, так же не генерирует скрипты

Здравствуйте

Включите пожалуйста DEBUG логирование в Jmix Studio (Help → Diagnostic Tools - Debug Log Settings… В диалоге добавить строку #com.haulmont.jmixstudio) и запустите генерацию Liquibase Changelog еще раз. После этого отправьте пожалуйста нам idea.log файл. Можно в личном сообщении.