[Seasar-user:10405] Re: HotDeploy時のClassPoolのキャッシュについて
Koichi Kobayashi
[E-MAIL ADDRESS DELETED]
2007年 9月 8日 (土) 15:30:35 JST
小林 (koichik) です.
Date: Sat, 08 Sep 2007 02:56:31 +0900
From: "BABA,Yasuyuki" <[E-MAIL ADDRESS DELETED]>
To: [E-MAIL ADDRESS DELETED]
Subject: [Seasar-user:10398] Re: HotDeploy時のClassPoolのキャッシュについて
> HotDeploy 時に AOP でエンハンスされたクラスを DXO で扱うと、リクエストご
> とに OgnlRuntime のキャッシュにアクセサメソッドが溜まっていって開放され
> るタイミングがないように見えます。
> ここは問題ないでしょうか?
問題ありますね.
エンハンスされたクラスが変換元で,@ConversionRule が
指定されている場合に該当します.
現在 Seasar2 では,ognl.org で配布されている
ognl-2.6.9 に同期の問題に対処したパッチを
適用して使用していますが,これにはキャッシュを
クリアするメソッドがありません.
opensymphony.com では 2.7 が配布されていますが,
こちらにはキャッシュをクリアするメソッドが
追加されています.
パッチ適用版 2.6.9 にキャッシュのクリアメソッドを
ポートするか,2.7 に同期のパッチを適用するか,
コミッタで相談して対処したいと思います.
P.S.
opensymphony.com の JIRA に同期の問題を登録お願いします>中村さん
http://jira.opensymphony.com/secure/BrowseProject.jspa
SVN で見たところ,2.6.9 のまま変わっていないので.
http://svn.opensymphony.com/svn/ognl/trunk/src/java/ognl/SimpleNode.java
P.P.S
OGNL の 2.7 になると Javassist 使ってパフォーマンスを
改善しようとしてるせいで,ClassPool の解放は今より
大変になるかも.
こんなのもあるし.
http://jira.opensymphony.com/browse/OGNL-120
2.7 系が落ち着くまで 2.6 にパッチして使う方が
無難かも.
--
<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 メーリングリストの案内