[Seasar-user:11551] Re: requiresNewTxにてcommit時に例外が発生した場合にRollbackされない
鈴木 順
[E-MAIL ADDRESS DELETED]
2007年 11月 8日 (木) 21:46:11 JST
小林さん
お世話になっております。鈴木です。
> <resource-ref>
> ...
> <resource-sharing-scope>Unshareable</resource-sharing-scope>
> </resource-ref>
残念ながらこちらは既にこのようになっています。
(特に意味もなくなってたのですが・・・・)
IBMへの問い合わせを明日してみます。
IBMからの返答を得次第お伝えします。
以上
On Thu, 08 Nov 2007 21:00:00 +0900
Koichi Kobayashi <[E-MAIL ADDRESS DELETED]> wrote:
> 小林 (koichik) です.
>
> Date: Thu, 08 Nov 2007 19:36:05 +0900
> From: 鈴木 順 <[E-MAIL ADDRESS DELETED]>
> To: [E-MAIL ADDRESS DELETED]
> Subject: [Seasar-user:11544] Re: requiresNewTxにてcommit時に例外が発生した場合にRollbackされない
>
> > ログの方取得できました。
>
> ありがとうございました.
> S2Tx が出力したログだけ見ると,こちらが
> 意図したとおりに動いているようです.
>
> > 少々昨日送付したものとは違い、
> > S2SessionFactoryImpl::bindSession->createSession
> > がちゃんと2度発生していますが、
> > 例外が発生している事は変わりがありません。
>
> この例外,単にログに出力されてるだけで,アプリ
> (S2 含む) 側にスローされてはいなかったのですね.
> てっきり requiresNew なトランザクションは実行
> されてないのだと思ってましたが,実は新しい
> トランザクションが開始されていて,required,
> requiresNew どちらともグローバルトランザクションに
> なってるので,S2Tx としては問題ないと思います.
>
> とはいえ,DB が更新されないのでは話になりませんね.
> これは,requiresNew なトランザクションがコミット
> されてないからで,例外が発生したことで requiresNew な
> トランザクションに jdbc/cimTestXA が参加できていない
> ためだと思われます.
>
> おそらくですが,required なトランザクションで取得した
> コネクションがクローズされる前に,requiresNew な
> トランザクションが開始されることが例外の原因に
> なってるのだと思います.
> 以下のドキュメントにもあるように,グローバル
> トランザクションの元では問題なくできないと
> いけないはずなんですけどね.
>
> http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/index.jsp?topic=/com.ibm.websphere.express.doc/info/exp/ae/cdat_conshrnon.html
>
> ローカルトランザクションの場合は接続を共有すると
> 問題があるので,このような場合は非共有にすることに
> なってるので,非共有接続を試してみるといいかも.
> web.xml のリソース参照で
>
> <resource-ref>
> ...
> <resource-sharing-scope>Unshareable</resource-sharing-scope>
> </resource-ref>
>
> って感じです.
>
> これで動くかどうかに関わらず,この現象は IBM さんに
> 報告するのがいいかもしれません.
> もしかしたら,すでに PTF が出てるかもしれませんし.
>
>
> --
> <component name="koichik">
> <property name="fullName">"Koichi Kobayashi"</property>
> <property name="email">"[E-MAIL ADDRESS DELETED]"</property>
> <property name="blog">"http://d.hatena.ne.jp/koichik"</property>
> </component>
>
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-user
Seasar-user メーリングリストの案内