Take JPA database action into account when setting ddlAuto
See gh-25129
This commit is contained in:
@@ -129,7 +129,8 @@ class DataSourceInitializedPublisher implements BeanPostProcessor {
|
||||
: "none");
|
||||
Map<String, Object> hibernate = this.hibernateProperties.determineHibernateProperties(
|
||||
this.jpaProperties.getProperties(), new HibernateSettings().ddlAuto(defaultDdlAuto));
|
||||
return hibernate.containsKey("hibernate.hbm2ddl.auto");
|
||||
return hibernate.containsKey("hibernate.hbm2ddl.auto") || !hibernate
|
||||
.getOrDefault("javax.persistence.schema-generation.database.action", "none").equals("none");
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -35,6 +35,7 @@ import org.springframework.util.StringUtils;
|
||||
* Configuration properties for Hibernate.
|
||||
*
|
||||
* @author Stephane Nicoll
|
||||
* @author Chris Bono
|
||||
* @since 2.1.0
|
||||
* @see JpaProperties
|
||||
*/
|
||||
@@ -129,6 +130,9 @@ public class HibernateProperties {
|
||||
}
|
||||
|
||||
private String determineDdlAuto(Map<String, String> existing, Supplier<String> defaultDdlAuto) {
|
||||
if (existing.get(AvailableSettings.HBM2DDL_DATABASE_ACTION) != null) {
|
||||
return null;
|
||||
}
|
||||
String ddlAuto = existing.get(AvailableSettings.HBM2DDL_AUTO);
|
||||
if (ddlAuto != null) {
|
||||
return ddlAuto;
|
||||
|
||||
Reference in New Issue
Block a user