[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 メーリングリストの案内