2016-05-11 10 views
2

Я пытаюсь использовать Liquibase с пружинной загрузкой. Вот мой application.properties файл:Весенний загрузочный привод Ликвидационная точка конечной точки

# ---------------------------------------- 
# DATA PROPERTIES 
# ---------------------------------------- 

spring.datasource.url=jdbc:postgresql://xxxxxx:5432/dev 
spring.datasource.schema=my_schema 
spring.datasource.username=my_username 
spring.datasource.password=my_password 

# LIQUIBASE (LiquibaseProperties) 
liquibase.default-schema=${spring.datasource.schema} 
liquibase.user=${spring.datasource.username} 
liquibase.password=${spring.datasource.password} 

Изменить наборы хорошо применяется (создание таблицы в порядке).

Проблема возникает, когда доступ /liquibase конечной точки пускателя на, я получаю ошибку 500:

Unable to get Liquibase changelog

Я также получаю следующее журнал:

org.postgresql.util.PSQLException: ERROR: relation "public.databasechangelog" does not exist

Если вещь проблемы является префиксом схемы, используемым для доступа к таблице изменений: «public» и «my_schema».

Я думал, что spring.datasource.schema был правильным параметром для установки?

ответ

1

Вот рабочий раствор (come from this answer):

# ---------------------------------------- 
# DATA PROPERTIES 
# ---------------------------------------- 

spring.datasource.url=jdbc:postgresql://xxxxxx:5432/dev?currentSchema=my_schema 
0

Просто думаю, что проблема заключается в том, что ваша «настоящая» схема устанавливается spring.datasource.schema, но таблицы Liquibase хранятся в public, и может случиться так, что исполнительный механизм Spring Boot не знает, что они могут быть раздельными.

+0

К сожалению, нет, таблицы правильно хранятся в "my_schema". – pierrefevrier