DBFlute -- 0.6.0 その4 {スピード}


ConditionBeanのSelect句の解析や検索結果マッピング部分において、
パフォーマンスを改善しました。
今までSelect句だけはS2Daoに任せていたのですが、
それも自前でやることにより、より最適な処理が実現できました。
マッピングも一部オーバーライドして自前の最適処理を入れました。

具体的には:
1. Select句のIFコメント処理コストがなくなった
2. マッピング時に、setupSelectされたものだけを走査
3. マッピング時に、リフレクションを(極力)使わない

画面アプリではあまり実感ないと思われますが、
夜間バッチでの大量処理などにおいて効果を発揮します。

また、Seasarの機能である「SqlLogRegistry」を
DBFluteを利用する際においてデフォルトでOFFにしました。
現状デフォルトでは設定ONです。
かつ、本番運用時も動作するようになっているようなのですが、
利用しない人にとってはこれはパフォーマンス劣化の1要因です。
https://ml.seasar.org/archives/seasar-user/2007-August/010133.html

利用しない人の方が割合としては圧倒的に多いので、
「SqlLogRegistry」を利用したい人は自分で設定をONにするようにします。

※DBFluteBasicExampleにて明示的に設定をONにする実装例があります。
https://www.seasar.org/svn/sandbox/dbflute/trunk/dbflute-basic-example
→ SqlLogRegistryTest