[s2container-php5:35] Re: S2Dao.PHP5+MySqlでのPDOトランザクションについて

Yusuke Hata nowel @ xole.net
2006年 6月 28日 (水) 02:29:23 JST


ハタです。
反応が遅くなってしまいました。申し訳ありません。

> 先日からS2Dao.PHP5で色々試しているのですが、
> 下記環境でPDOトランザクションを利用しようとして問題が発生し困っています。
> 
> s2container.php5-1.1.0
> s2dao.php5-1.1.0-rc3
> MySQL 4.1.20
> PHP 5.1.2
> windows 2000
> 
<skip> 
> 
> hasTransaction()を呼び出すと、
> beginTransaction()によってトランザクションが開始され、
> S2Dao_RequiredInterceptor側で更にbegin()としているので、
> ここでエラーになるようなのです。
> 
> そこで、とりあえずinvokeを下記の様にしてみたところ、
> どうやら上手く動作しているようなのですが、
> これで問題ないものなのでしょうか?
> 
>         if (!$this->hasTransaction()) {
>             if (!$this->hasTransaction()) {
>                 $this->begin();    //多分ここを通過することは無い
>              }
>             $began = true;
>         }
> 
> S2Dao_RequiredInterceptorを書き換えるものなんなので
> 何か他に良い解決方法があるのかも知れないと思うのですが、どうでしょうか?

現在他の実装方法とDBMSの兼ね合いを含めて検討中です。
申し訳ありませんが、もう少しお待ちください。

-- 
Yusuke Hata <nowel @ xole.net>
blog: http://blog.xole.net/


S2Container-PHP5 メーリングリストの案内