У меня есть следующее свойство и инструкция вставки в мой набор изменений в liquibase
Block1</p>
<pre><code><property name="RESTRICTED_ADMIN_UUID" value="uuid_generate_v4()" dbms="postgresql"/>
<property name="FULL_ACCESS_ADMIN_UUID" value="uuid_generate_v4()" dbms="postgresql"/>
<property name="MANAGE_INBOX_C_UUID" value="uuid_generate_v4()" dbms="postgresql"/>
block2
<insert tableName="role">
<column name="id" valueComputed="${RESTRICTED_ADMIN_UUID}"/>
<column name="version" value="0"/>
<column name="description" value="Default restricted role for mapped-free-plan users"/>
<column name="name" value="RESTRICTED_ADMIN"/>
<column name="status" value="ACTIVE"/>
<column name="bp_id" value="0"/>
</insert>
<insert tableName="role">
<column name="id" valueComputed="${FULL_ACCESS_ADMIN_UUID}"/>
<column name="version" value="0"/>
<column name="description" value="Default restricted role for mapped-free-plan users"/>
<column name="name" value="FULL_ACCESS_ADMIN"/>
<column name="status" value="ACTIVE"/>
<column name="bp_id" value="0"/> <!-- 0 means default template object -->
</insert>
Block3
<insert tableName="permissions">
<column name="id" valueComputed="${MANAGE_INBOX_C_UUID}"/>
<column name="version" value="0"/> <column name="description" value="Manage inbox create"/>
<column name="name" value="MANAGE_INBOX_C"/>
</insert>
Block4
<insert tableName="role_permission">
<column name="id" valueComputed="uuid_generate_v4()"/>
<column name="version" value="0"/>
<column name="is_all" value="FALSE"/>
<column name="is_create" value="TRUE"/>
<column name="is_delete" value="FALSE"/>
<column name="is_read" value="FALSE"/>
<column name="is_update" value="FALSE"/>
<column name="permission_id" valueComputed="${MANAGE_INBOX_C_UUID}"/>
<column name="role_id" valueComputed="${RESTRICTED_ADMIN_UUID}"/>
</insert>
Блок 1, 2,3 работает без ошибок.
Блок 4 выдает следующую ошибку
=========================================
Причина: liquibase.exception.DatabaseException: ОШИБКА: вставка или обновление в таблице "role_permission" нарушает ограничение внешнего ключа "fk2xn8qv4vw30i04xdxrpvn3bdi" - деталь: Key (license_id) = (bfa5266c-7df1-48ca-8dae-44a4) отсутствует-44a4) в таблице "разрешения". [Сбой SQL: INSERT INTO public.role_permission (идентификатор, версия, is_all, is_create, is_delete, is_read, is_update, license_id, role_id) VALUES (uuid_generate_v4 (), '0', 'FALSE', 'TRUE', 'FALSE', 'ЛОЖЬ', 'ЛОЖЬ', uuid_generate_v4 (), uuid_generate_v4 ())]
Ожидаемый результат:
что оператор вставки в блоке 4 был бы что-то вроде
INSERT INTO public.role_permission (id, version, is_all, is_create, is_delete, is_read, is_update, permission_id, role_id)
VALUES (uuid_generate_v4(), '0', 'FALSE', 'TRUE', 'FALSE', 'FALSE', 'FALSE', UUID-generated-in-block1-line3, UUID-generated-in-block1-line1)