[Seasar-user:7106] DBFlute 0.4.4 リリース
kubo
[E-MAIL ADDRESS DELETED]
2007年 4月 7日 (土) 17:49:43 JST
久保(jflute)です。
DBFlute 0.4.4をリリースしました。
http://dbflute.sandbox.seasar.org/ja/
S2Dao-1.0.41 にて動作確認済です。
変更点は下記の通りです。
[DBFLUTE-76] {Java/C#}: BehaviorのTransactionを設定でOn/Offできるようにする。
[DBFLUTE-75] {Java}: Daoの初期化時のConnectionをTransactionとは別のConnectionを使う。{Sybase対応}
[DBFLUTE-74] {Java}: 複数DB対応時にBehaviorのComponent名にprojectSuffixが付いていないためにInjectionができない。
[DBFLUTE-72] {Java}: ConditionBeanにて同Table間限定のUnionをサポートする。
[DBFLUTE-71] {Java/C#}: Volocityが吐き出す「report.${torque.project}.sql2entity.generation」を阻止する。
[DBFLUTE-70] {Java/C#}: 外だしSQLに対してQueryTimeout設定が無効になっているのを修正すること。
[DBFLUTE-76]
※[Seasar-user:7087] [DBFlute]DBFlute.dicon のrequredNewTxについて
[DBFLUTE-75]
Sybase-12.xにおいて、Transaction内でDatabaseMetaData.getColumns()を
呼び出すと以下のような例外が発生することが報告されています。
com.sybase.jdbc2.jdbc.SybSQLException
The 'CREATE TABLE' command is not allowed within a multi-statement
transaction in the 'tempdb' database.
S2Daoの初回アクセス時のDao初期化にてTransaction内で
DatabaseMetaData.getColumns()が呼び出されるときに発生するようです。
根本的な解決にはいたっていませんが、DBFluteではひとまずの回避を
致しました。
torque.isAvailableOtherConnectionDaoInitialization = true
と設定すると、S2DaoのDao初期化時に、既に開始されているTransactionを
一旦suspend()させて初期化で使うConnectionは別のConnectionを使うように
なります。初期化が終わるとresume()してTransactionが再開します。
他のDBでも利用できますが、今のところSybase限定の処置と考えます。
[DBFLUTE-74]
※[Seasar-user:7059] [DBFlute] 複数DBアクセス時のallcommonについて
http://dbflute.sandbox.seasar.org/ja/migration/migrate-043to044.html
[DBFLUTE-72]
http://dbflute.sandbox.seasar.org/ja/tips-condition_bean.html
の一番下「11」番をご覧下さい。
非常に限定的・定型的でかつ利用頻度が高いためSupportしました。
[DBFLUTE-71]
今まで、「なんだこりゃ、へんなところにへんなファイルが出力される」と
思われた方もいたと思います。
Volocityが吐き出すレポートファイルの出力を止めました。
[DBFLUTE-70]
BUG修正です。
外だしSQLに対してQueryTimeout設定が無効になっていたのを修正しました。
「DBFluteの役割」という概念図を作成しました。
http://dbflute.sandbox.seasar.org/view//role_of_dbflute/index.html
にて左のExploreの「role_of_dbflute-cmu」をClickして下さい。
Seasar-user メーリングリストの案内