2008/03/13

pgpoolでロードバランサ機能を利用する場合、トランザクション内のSELECTでないことが条件の一つにあげられるがCayenneではデフォルトでトランザクションを開始してしまう。

そこでトランザクションを開始させない方法は以下

try {
// トランザクションは実行しない
Transaction.bindThreadTransaction(Transaction.noTransaction());

// なんらかのクエリを発行
}
finally {
// 元にもどす
Transaction.bindThreadTransaction(null);
}

0 件のコメント: