[Seasar-user:22155] Re: 【DBFlute】自動生成クラスの挙動について
kubo
[E-MAIL ADDRESS DELETED]
2017年 12月 12日 (火) 21:46:59 JST
久保(jflute)です
もろもろ情報ありがとうございます!
とりあえずコメントできるところにコメント入れます。
> →実はxmlファイル、diffmapなどを管理対象外として
> 各自のローカル管理で運用していたのですが
SchemaXML は、ignoreにしても大丈夫といえば大丈夫ですね。
普段jfluteの周りのプロジェクトではcommit対象にしていますが、
ReplaceSchemaでちゃんとDBを管理しているのであれば、
誰が叩いても論理的には同じSchemaXMLになるはずなので。
ただ、Generateだけを実行とかすると変なズレが
発生してしまう可能性があるので、
必ず Renewal や Regenerate を使って、
JDBCタスクと共にGenerateするようにしないとですね。
一方で、コミットしておいたほうが、
今回のような事象が発生した時に状況を
把握しやすいというのはあるかもしれません。
...
diffmapは、HistoryHTMLを作るためのもので、
ignoreにしているとHistoryHTMLが
まともな情報にならないかと思います。
http://dbflute.seasar.org/ja/manual/function/generator/task/doc/historyhtml.html
クラスの自動生成には一切影響しませんので、
できればcommit対象にしてHistoryHTMLも
活用して頂けるとう、う、嬉しいです...
> D. SchemaXML (DBFluteクライアントのschemaフォルダの下のxml) も差分出てる?
> => XMLの前から入れ替わってるのか、XMLの後で入れ替わってるのかの切り分け
> →発生しない人のdiffmap、及びschemaXMLを配置し
> renewal実行した所、差分発生がしなくなった
ここが不可思議な現象ですね。
実際には、renewalでSchemaXMLが上書きがされるので、
他の人のSchemaXMLを持ってこようがこまいが
論理的には関係ないはずなので。
厳密には、既存のSchemaXMLを参照してdiffmapが更新されますが、
こちらは自動生成クラスには影響しません。
まあ、発生する人と発生しない人がいるということで、
何かしら...JavaかJDBCドライバかOracleDBなどで、
実行時の差ができてしまっているのかもしれません。
もうちょい色々と実験を繰り返さないとわからなさそうですね...
ただ、ひとまず回避はされているということなので、
無理せず、また頻発して困るようであれば、
また言って頂ければフォローさせて頂きますのでお気軽に。
jfluteとしては、ちょっと気になりますが....
> ※引き続きご利用させていただきます!
わーい、ありがとうございます!(^^
Seasar-user メーリングリストの案内