2010年7月 6日

[pgsql-jp: 40312] Re:PostgreSQLの接続エラーの原因を究明したい

板垣です。

2010年7月6日11:46 木元 愛 <kimoto.ai@xxxxx>:
> WindowsServer2003 R2 SE
> ?PostgreSQL 8.1.9

Windows版の 8.1 はサポートが終了しています。
サポートが必要であれば、8.2 以降へのアップグレードをおすすめします。

# 正確には、修正不能なバグが残っており、サポートできない状況です。
# stats collector がハングするなど、致命的なバグがあることが判明しています。

> バッチ処理(PostgreSQLのテーブル対してPSQL.exeを使用しSQLを実行する処理)を
> 起動しようとしたところPostgreSQLにODBC接続が出来ず、

?「psql を使うバッチで ODBC 接続できない」というのはおかしな表現です。
psqlはODBCを使いません。

> 2010-06-28 10:43:36 FATAL: ?semctl(9335392, 13, SETVAL, 0) failed: ブロック
> 不可のソケット操作をすぐに完了できませんでした。

Windowsのsemctl(SETVAL)は WaitForMultipleObjectsEx() でエミュレートされて
いますが、8.1ではWAIT_TIMEOUT になるケースのエラー処理が適切で無いように
見えます。少なくとも 9.0 では処理が変更されている箇所なので、もしかすると、
これが「8.1の修正不能なバグ」である可能性もあります。
対処としては、PostgreSQL サーバを再起動するくらいしかないかもしれません。

投稿者 xml-rpc : 2010年7月 6日 13:40
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/96897
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。