outOfOrder
をtrue に設定すると、ログに次の警告メッセージが表示されます。
警告: outOfOrder モードがアクティブです。移行の実行は再現できない場合があります。
このメッセージの正確な意味は何ですか? 移行が発生するとどうなるか誰かが教えてくれると助かります。どんな例でも役に立ちます。
3つの移行を想定します。
outOfOrderで実行すると、移行が次のように適用される可能性があります。
1、3、2-> DB内:TOM、JERRY、Mickey
後で再実行すると、
1、2、3-> DB内:TOM、JERRY、MICKEY
これが、outOfOrderが潜在的に危険であり、最初の移行の実行が再現できない可能性がある理由です。
Axel の回答に加えて、結果のデータが順序によって異なるだけでなく、移行が不可能な場合もあります。検討:
移行:
foo
foo.bar
foo.bar
をに変更foo.baz
実行順序:
foo
列ありbaz
foo.bar
が見つかりませんfoo
が見つかりませんfoo
が見つかりません