我使用的是可重複的飛行路徑遷移,它可以在一定情況下運行多次的情況下執行一些數據遷移。我在遷移.sql代碼的註釋中放置了一個佔位符值,例如$ {TRIGGER_DATA_UPDATE}。我們的想法是從flyway.conf(或更改flyway.conf的bash腳本)更改此佔位符值,並進行可重複的遷移運行。如果佔位符發生更改,可重複的飛行路徑遷移將不會再次運行
據我所見,更改佔位符不會導致可重複遷移再次運行。它只會運行一次。它看起來好像校驗和計算沒有考慮佔位符值。
這是功能還是錯誤?
相反,如果我直接在可重複遷移內部編輯註釋,則會檢測到更改,並且遷移將在下一次flyway調用中運行。
這裏是可重複的遷移.sql文件:
-- The following line will trigger execution of this script appropriately when upgrade.shis executed
/* ${TRIGGER_DATA_UPDATE} */
UPDATE restcomm_accounts SET password = auth_token, password_algorithm = 'md5' WHERE password IS NULL;
的TRIGGER_DATA_UPDATE是佔位符值。
這裏是flyway.conf的重要組成部分:
flyway.placeholders.TRIGGER_DATA_UPDATE=this_part_changes