1
我們剛剛從Grails 2.2.1升級到Grails 2.4.2爲什麼Grails 2.4將包含域對象的數據庫添加到我的數據庫中?
修復了一切之後,我們注意到我們的一些MySQL數據庫表中有一些額外的列。
這裏的情景:
class User {
String username;
}
class Report {
User issuedBy;
}
升級之前,我們的MySQL表報告是這樣的:
|id:int|version:int|issued_by_id:int|
升級後,它看起來像這樣:
|id:int|version:int|issued_by_id:int|issued_by:blob|
我不明白這是爲什麼,並且不希望我們的生產數據庫在我部署新版本後改變離子。
有誰知道這個額外的領域是什麼,它來自哪裏,它做了什麼?
它可能是值得的JIRA,但你不應該信任生成的代碼,或在這種情況下,生成的更新日誌。它很可能是正確的,但在應用更改之前,您必須驗證它。該插件不承諾無錯誤的輕鬆遷移,只是它能讓您獲得大部分途徑,並希望最大限度地減少人爲干預的數量。 – 2014-09-04 15:25:50
我運行了更改日誌,並突出顯示了更多不需要的更改。即使我們使用table-per-hierarchy並且實際生成的MySQL查詢經過正確的共享表,升級爲派生類生成了表。 – user3311492 2014-09-04 15:46:23
這兩個問題都看起來像JIRA值得關注的問題。看起來我在2.3.9上待了一段時間: – sola 2014-09-05 12:07:50