6

liquibase のロールバックと更新操作の Maven タスクを高速化する方法はありますか?

現在、データベースには約 280 の変更セットがあり、更新を行うと、databasechangelog から読み取るだけで長い時間がかかります。

私はリキベース 2 と変更セット用の多くの SQL 形式のファイルを使用しています。ありがとう

編集:実行時により具体的な時間枠を追加する

INFO 11/16/12 10:46 AM:liquibase: Reading from databasechangelog
INFO 11/16/12 10:54 AM:liquibase: Successfully released change log lock

この例では、MBP (8 GB の RAM を搭載したコア i7) でローカルに実行されています。

4

3 に答える 3

1

同じことに気付きました。Maven経由で使用すると、以下が表示されます。

[INFO] Executing on Database: jdbc:postgresql://localhost/mydb
INFO 11/5/12 1:01 PM:liquibase: Successfully acquired change log lock
INFO 11/5/12 1:01 PM:liquibase: Reading from databasechangelog
INFO 11/5/12 1:01 PM:liquibase: Reading from databasechangelog
INFO 11/5/12 1:02 PM:liquibase: ChangeSet mydb/db.changelog-006.sql::55::ebridges ran successfully in 41ms
INFO 11/5/12 1:02 PM:liquibase: Successfully released change log lock
INFO 11/5/12 1:02 PM:liquibase: Successfully released change log lock

全体として、単一の変更セットを実行するのに 2 分かかり、それ自体の実行時間はわずか 41 ミリ秒だったことに注意してください。それは遅いです。

于 2012-11-05T18:06:20.300 に答える
1

私のマシンで問題を再現したところ、メイン スレッドがネイティブ メソッドでスタックしていました。

java.lang.Class.getGenericSignature()

これは、JDK の実装に問題があることを示しています。実装のアップグレードまたは切り替えを検討してください。

于 2013-10-08T14:42:35.350 に答える