[Seasar-user:16659] Re: 【S2DAO】同一トランザクション内でのInsert後のSelect
kubo
[E-MAIL ADDRESS DELETED]
2009年 1月 13日 (火) 12:14:11 JST
久保(jflute)です。
> トランザクション分離レベルは、通常
「通常」というのは、「ReadCommitted」でいいですよね?
> トランザクションを、Logicの特定のメソッドにのみ適用する
> カスタマイズ(customizer.diconに記述)をしている事や、マルチデータソース化
> していることは、何か関係しますでしょうか?
トランザクションが利いていないという可能性もあるかもしれません。
Insertして例外発生させてちゃんとロールバックされているかどうか
確認してみてください。
また、「マルチデータソース化」と一言に言っても、
人によっては色々な解釈(仕組みを想像する)があるため、
もう少し具体的に書かれたほうが良いです。
さらにですが、問題の切り分けをする場合は、
フレームワークを全く使わないパターンで
試し実装してみて結果がどうなるかを確認すると良いです。
2009/1/13 r. m <[E-MAIL ADDRESS DELETED]>:
> 久保様
>
> 確認したところ、DBはOracleで
> トランザクション分離レベルは、通常
> SQL*Plus等では、Insertしたのち、Commitする前に
> Selectが可能なので、同一セッション・トランザクションであれば
> アプリケーションでも同様の結果になると言われました。
>
> トランザクションを、Logicの特定のメソッドにのみ適用する
> カスタマイズ(customizer.diconに記述)をしている事や、マルチデータソース化
> していることは、何か関係しますでしょうか?
>
>
>> 久保様
>>
>> 水澤です。
>> 失礼しました。
>>
>> Select対象は、Insertしたレコードとなります。
>>
>> >トランザクション分離レベル
>> こちらについて、勉強不足であったため、認識外でした。
>> こちら、DBAに確認してみようと思います。
>>
>> おそらく、非コミット読み取りになっていないせいかと思います。
>>
>> 大変勉強になりました。
>>
>> 有難うございます。
>>
>>
>>> 久保(jflute)です。
>>>
>>> こんばんは、水澤さん
>>> もう少し具体的な情報があった方が良いかと思います。
>>>
>>>> S2DAOにて、Insertしたのち、CommitせずにSelectを
>>>> する事は可能でしょうか?
>>>
>>> Insert後にSelectするのは「Insertしたレコード」でしょうか?
>>>
>>>> 現在、同一トランザクション内では、不可能なため
>>>> 一度Commit(一度トランザクションを開始・終了)してから、
>>>> 別トランザクション内にて、Selectしています。
>>>
>>> 対象のデータベースとトランザクション分離レベルは何でしょうか?
>>> 同一トランザクションでInsertしたレコードがSelectできるかどうかは、
>>> 基本的にはフレームワークはあまり関係なく、
>>> データベースとトランザクション分離レベルに依存すると思います。
>>>
>>> 2009/1/12 r. m <[E-MAIL ADDRESS DELETED]>:
>>>> お世話になっております。 水澤です。
>>>>
>>>> S2DAOにて、Insertしたのち、CommitせずにSelectを
>>>> する事は可能でしょうか?
>>>>
>>>> 現在、同一トランザクション内では、不可能なため
>>>> 一度Commit(一度トランザクションを開始・終了)してから、
>>>> 別トランザクション内にて、Selectしています。
>>>>
>>>> Version
>>>> S2DAO 1.0.48
>>>> S2 2.4.26
>>>>
>>>> トランザクションは、Customizer.diconにて
>>>> Logicクラスに張っています。
>>>> また、マルチデータソース化しております。
>>>>
>>>> 宜しくお願いいたします。
>>>> _______________________________________________
>>>> Seasar-user mailing list
>>>> [E-MAIL ADDRESS DELETED]
>>>> https://ml.seasar.org/mailman/listinfo/seasar-user
>>>>
>>> _______________________________________________
>>> Seasar-user mailing list
>>> [E-MAIL ADDRESS DELETED]
>>> https://ml.seasar.org/mailman/listinfo/seasar-user
>>>
>>
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-user
>
Seasar-user メーリングリストの案内