[Seasar-user:13318] Re: 【JdbcManager】 Postgresで forUpdateNowait()が使えない

Keita Sugawara [E-MAIL ADDRESS DELETED]
2008年 3月 18日 (火) 12:26:14 JST


菅原です。

> まず、8.0を使っている人が、どれくらいいるか
> MLで聞いてみたいと思います。

現在、PostgreSQL8.2 と 8.3 を使用して開発を進めています。
もし forUpdateNowait ができると幅が広がるので嬉しいですね。

一般的に、今後あらたに 7.x 系を採用するケースは少ないかとは思いますが
7.x 系の環境も多いと思います。ので、

> > 8.1 以降用に Postgre81Dialect とか新たに作って
> > 対応するか,ということになると思います.

という方が良いのかな、と思います。
(7.x系と8.x系で違う部分も多いですし)

よろしくお願いします。


On Tue, 18 Mar 2008 09:58:30 +0900
Yasuo Higa <[E-MAIL ADDRESS DELETED]> wrote:

> ひがです。
> 
> > 小林 (koichik) です.
> > 
> > Date:    Mon, 17 Mar 2008 22:15:44 +0900
> > From:    [E-MAIL ADDRESS DELETED]
> > To:      [E-MAIL ADDRESS DELETED]
> > Subject: [Seasar-user:13308] 【JdbcManager】 Postgresで forUpdateNowait()が使えない
> > 
> > > jdbcManegerを利用しているのですが、.forUpdateNowait() メソッドが利用できません。
> > > 
> > > 以下のようなエラーが表示されます。
> > > 
> > > Throwable:java.lang.UnsupportedOperationException: [ESSR0748]エンティティ(TTestEntity)の検索にFOR UPDATE NOWAITが指定されましたが、DBMS(postgre)ではサポートされていません。
> > > 
> > > しかしながら、Postgresは以下のSQLが通るのでnowaitをサポートしている様に思えます。
> > > select * from t_test for update nowait
> > 
> > こちらで軽く調べた限りだと,PostgreSQL 8.1 から
> > nowait がサポートされているようですね.
> > 
> > 今のところ,PostgreDialect の対象バージョンを
> > 明確にしていないのですが,8.0 以前はもうほとんど
> > 使われていないということであれば,PostgreDialect は
> > 8.1 以降限定ということでnowait をサポートしても
> > いいかもしれません.
> > 
> > しかし,8.0 以前もまだ多く利用されているなら,
> > PostgreDialect では nowait をサポートせず,
> > 8.1 以降用に Postgre81Dialect とか新たに作って
> > 対応するか,ということになると思います.
> > 
> まず、8.0を使っている人が、どれくらいいるか
> MLで聞いてみたいと思います。
> 
> いない、あるいは、いてもS2JDBCを使う予定がないなら、
> PostgreDialectでnowaitをサポートしたほうがいいのかなと思います。
> 
> 三日間(?)、反応がなければ、8.0が使われていないとみなすことにしましょうか。
> 
> 修正を入れる場合でも、関修康さんのほうから、動くものを
> 提供していただいたほうがこちらとしても安心です。
> 
> PostgreSQLでも、もちろんテストしていますが、
> 日常的に使っているわけではないので。
> 
> よろしくお願いします。
> _______________________________________________
> Seasar-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/seasar-user


-- 
Keita Sugawara <[E-MAIL ADDRESS DELETED]>



Seasar-user メーリングリストの案内