美好的一天
我们在maven项目中使用
liquibase-maven-plugin
的4.20
版本。
我们有一个特定的配置文件,它有 dropAll
和 update
目标。
当 mvn clean -P my-profile
第一次在空数据库上运行时,它可以正常工作。
从日志中我可以看到:
[INFO] Changelog query completed.
[INFO] Changelog query completed.
[INFO] Changelog query completed.
[INFO] Changelog query completed.
[INFO] Changelog query completed.
[INFO] Successfully acquired change log lock
[INFO] Dropping Database Objects in schema: x
[INFO] Creating database history table with name: databasechangelog
[INFO] Changelog query completed.
[INFO] Changelog query completed.
[INFO] Changelog query completed.
[INFO] Changelog query completed.
[INFO] Successfully deleted all supported object types in schema x
[INFO] Successfully released change log lock
但是运行相同的命令会导致冻结:
[INFO] Changelog query completed.
[INFO] Changelog query completed.
[INFO] Changelog query completed.
[INFO] Successfully acquired change log lock
[INFO] Dropping Database Objects in schema: x
[INFO] Changelog query completed.
[INFO] Changelog query completed.
pom.xml:
<plugin>
<groupId>org.liquibase</groupId>
<artifactId>liquibase-maven-plugin</artifactId>
<version>${liquibase.version}</version>
<configuration>
...
</configuration>
<executions>
<execution>
<id>liquibase-dropAll</id>
<phase>initialize</phase>
<goals>
<goal>dropAll</goal>
</goals>
</execution>
<execution>
<id>liquibase-update</id>
<phase>initialize</phase>
<goals>
<goal>update</goal>
</goals>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>${postgresql.version}</version>
</dependency>
</dependencies>
</plugin>
对我来说似乎是某个进程在做某事并且不从
databasechangeloglock
释放锁
有人看过吗?