[pgsql-jp: 34505] Re: Cygwin+PostgreSQLでWindows ハンドルの開放漏れ?

TANIDA Yutaka tanida @ sra.co.jp
2004年 12月 21日 (火) 12:07:59 JST


谷田です。

On Mon, 20 Dec 2004 21:55:19 +0900 (JST)
NOBU <nobu-fujita @ nifty.com> wrote:

> はじめましてNOBUと申します。
> 以前よりLinux+PostgreSQLは趣味&業務で使用しており、
> とても便利に使ってきました。
> 今回、事情によりWindows2000にCygwin+PostgreSQLという
> システムを運用することになったのですが、長時間運用すると
> JDBCでコネクションを生成することができなくなるという問題
> が発生し困っています。
> どなたか同様の現象にあった方、解決された方がいらっしゃったら
> お知恵を拝借したく思います。
> 
> <環境>
> Windows2000
> Cygwin バージョン1.5.11(cygserver 1.10)
> PostgreSQL 7.4.5
> 
> <問題再現方法>
> ・Cygwin上でPostgreSQLを立ち上げる。
> ・特にDBにアクセスすることなく放置する。
>   (JDBCによるアクセスはまったくなく、単に立ち上げただけ)
> ・この状況で、Windowsのパフォーマンスモニターを
>   つかいcygserverのProcess->Handle Countを監視する。
> ・ある周期で定期的にHandle Countが1増加する。
> ・Handle Countが7000を越えたあたりで動作がおかしくなる。
>   このときJDBCでつなげている場合には、コネクションがおかしくなったり
>   コネクションの生成ができなくなる。
> 
> <現在までわかっていること>
> ・CHECK POINTを作成するタイミングで必ずHandle Countが増加する
>   ことがわかりました。
> ・したがって、postgresql.confのcheckpoint_timeoutの設定を
>   変更すると、その設定時間に従ったタイミングでHandle Countが増加
>   します。
> 
> 最悪、問題発生時にDBのデータが飛んでもかまわないので、とにかく
> 長時間運用したいのです。その目的のためなら、多少機能やパフォーマンスが
> 落ちてもかまわないのですが。
> 現在PostgreSQLのソースも追っていますが、なにぶん始めてみるソースのために
> 時間がかかっています。
> 国内・国外のMLをいろいろ検索したのですが、CYGWIN上のPostgreSQLでCHECK POINT
> のタイミングで妙なことが起きるという記事は見かけましたが、解決方法は
> ありませんでした。
> 
> どなたか、解決方法をご存知でしたら、教えていただければと思います。

賭けてもいいですが、Cygwinのバグです。バージョンアップすれば直っていたり
しませんか?



-- 
TANIDA Yutaka <tanida @ sra.co.jp>




pgsql-jp メーリングリストの案内