Skip to content

Commit a5e78b7

Browse files
authored
Merge pull request #30778 from gsmet/liquibase-mongodb-optimizations
Avoid creating 3 Liquibase MongoDB instances for startup operations
2 parents 5d7c271 + d4eebd0 commit a5e78b7

File tree

1 file changed

+11
-8
lines changed

1 file changed

+11
-8
lines changed

extensions/liquibase-mongodb/runtime/src/main/java/io/quarkus/liquibase/mongodb/runtime/LiquibaseMongodbRecorder.java

+11-8
Original file line numberDiff line numberDiff line change
@@ -47,18 +47,21 @@ public void doStartActions() {
4747
for (InstanceHandle<LiquibaseMongodbFactory> liquibaseFactoryHandle : liquibaseFactoryInstance.handles()) {
4848
try {
4949
LiquibaseMongodbFactory liquibaseFactory = liquibaseFactoryHandle.get();
50-
if (liquibaseFactory.getConfiguration().cleanAtStart) {
51-
try (Liquibase liquibase = liquibaseFactory.createLiquibase()) {
50+
51+
if (!liquibaseFactory.getConfiguration().cleanAtStart
52+
&& !liquibaseFactory.getConfiguration().migrateAtStart) {
53+
// Don't initialize if no clean or migration required at start
54+
return;
55+
}
56+
57+
try (Liquibase liquibase = liquibaseFactory.createLiquibase()) {
58+
if (liquibaseFactory.getConfiguration().cleanAtStart) {
5259
liquibase.dropAll();
5360
}
54-
}
55-
if (liquibaseFactory.getConfiguration().migrateAtStart) {
56-
if (liquibaseFactory.getConfiguration().validateOnMigrate) {
57-
try (Liquibase liquibase = liquibaseFactory.createLiquibase()) {
61+
if (liquibaseFactory.getConfiguration().migrateAtStart) {
62+
if (liquibaseFactory.getConfiguration().validateOnMigrate) {
5863
liquibase.validate();
5964
}
60-
}
61-
try (Liquibase liquibase = liquibaseFactory.createLiquibase()) {
6265
liquibase.update(liquibaseFactory.createContexts(), liquibaseFactory.createLabels());
6366
}
6467
}

0 commit comments

Comments
 (0)