JPA FlushModeType.COMMITでSELECTすると削除されたEntityが読めるのか?
私が突っ込んだやつですが・・・
よく考えたらid:taediumさんの日記にあるように読めなかったですね。
そこが保証されないと仕様としてだめだし・・。
でね。
元々なにが言いたかったかというと
SQLの実行はflush時でメソッド呼び出し時とは限らないってことと
ライフサイクルなんですよね。
でね。
そのflush時にしか実行されない例としてどんな弊害があるかを参考に言いたかったのですが、
整理しきれていませんでした。
以前やったhibernateプロジェクトでは、一意制約のエラーがコミット時にわかると困るなぁ〜って
やつでした。 なのでInsert予約時にflushも実行して一意制約をとったりとかそんな話しが正解だったのかな・・。
そもそも私の言っていることってほとんどHibernateなのでJPAとはちょっと違うかもしれません。
JPAはちょっと推測を含んで言ってます。
JPAはちょっと試しに使ってみただけでプロジェクト投入はしたことないですし・・
うそ言ってたらごめんなさい。 指摘してもらえるとうれしいっす。