[Seasar-user:15037] Re: [S2JDBC] SQL自動生成のメモリ消費

Koichi Kobayashi [E-MAIL ADDRESS DELETED]
2008年 7月 15日 (火) 20:00:29 JST


小林 (koichik) です.

Date:    Tue, 15 Jul 2008 11:29:22 +0900
From:    "Takashi ARAKANE" <[E-MAIL ADDRESS DELETED]>
To:      [E-MAIL ADDRESS DELETED]
Subject: [Seasar-user:15032] Re: [S2JDBC] SQL自動生成のメモリ消費

> @RequiresNewTx が、ループの中に存在するということは、
> 検証用コードにおいてのPreparedStatement の作成/クローズも
> 下記に示しますとおりループ中になると思うので・・・・・
> Connector/J と S2JDBCとの相性が悪いということでしょうか?

単に S2JDBC がバグってました.orz

getGeneratedKeys() を使う場合,通常の
Connection#prepareStatement(String)
ではなく,
Connection#prepareStatement(String, int)
を使うのですが,その場合に作成した
PreparedStatement をキャッシュに入れる処理が
抜けていました.というか,キャッシュを
使おうとしていませんでした.
そのため,キャッシュのクリア時に任せていた
クローズが行われることもなく...
心より恥じる心より恥じる心より恥じる...

修正して SNAPSHOT をデプロイしたのでご確認ください.

http://maven.seasar.org/maven2-snapshot/org/seasar/container/s2-framework/2.4.27-SNAPSHOT/s2-framework-2.4.27-20080715.103015-3.jar
http://maven.seasar.org/maven2-snapshot/org/seasar/container/s2-extension/2.4.27-SNAPSHOT/s2-extension-2.4.27-20080715.103015-3.jar
http://maven.seasar.org/maven2-snapshot/org/seasar/container/s2-tiger/2.4.27-SNAPSHOT/s2-tiger-2.4.27-20080715.103711-3.jar

今度は勘違いじゃないはず...


-- 
<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 メーリングリストの案内