[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[dennou-ruby:002723] Re: [gphys_netcdf] too many connects
- To: dennou-ruby@xxxxxxxxxxx
- Subject: [dennou-ruby:002723] Re: [gphys_netcdf] too many connects
- From: KOSHIRO Tsuyoshi <koshiro@xxxxxxxxxxxxxx>
- Date: Mon, 06 Nov 2006 12:16:18 +0900
神代です.
かなり古くからの話題ですが,
OPeNDAPのNetCDFライブラリを使うと ruby-netcdf で32個までしかファイルが
開けないという問題があります.
この解決方法がわかりました.
OPeNDAPのNetCDFライブラリ libnc-dap の
lnetcdf/lnetcdf.h
lnetcdf/netcdf.h
の中の
#define MAX_NC_OPEN 32
を
#define MAX_NC_OPEN sysconf(_SC_OPEN_MAX)
にすれば,そのシステムでの 1プロセスが同時にオープンできるファイル数の
上限が適用されます.
この変更をしたあとで,configure; make; make install してください.
なお,libdap には変更必要ありません.
次にRPMパッケージを作る際には,この変更をしようと思います.
Debianのパッケージでも同様に作っていただけるといいと思います.
なお,libnc-dap の最新は 3.6.2 です.(libdap は 3.7.2)
ftp://ftp.unidata.ucar.edu/pub/opendap/source
At Mon, 07 Nov 2005 16:45:41 +0900,
Takeshi Horinouchi wrote:
>
> 堀之内です。
>
> これ、"connects" から想像着く通り、OPeNDAP/DODS の NetCDF ライブ
> ラりーから出てます。30個ぐらいまでの制限になってしまってて、純正
> 品の NetCDF ライブラリーよりも随分少ないです。ローカルなファイル
> なので、こんなに制限する必要ないはずなのですが、要するに実装が悪
> いんですね。意見を言っとかないと思いつつ、まだやってません。
>
> # デフォルトで DODS 対応版を使うようにするのも考え物かもしれま
> せん。しかし、対応版と非対応版の2つのパッケージを用意するの
> はややこしそう。やはり改善してもらうのがいいような。。。
>
> > 竹広です.
> >
> > 毎度 trivial なところでこけてます. 今回は以下のような
> > メッセージにでくわししました. 単純に netcdf ファイルを
> > いくつも開けているんですけど, その数に制限があるんでしょうか.
> >
> > add_connect: too many connects, cannot add another
> > /usr/lib/ruby/1.8/numru/gphys/gphys_netcdf_io.rb:520:in `var': Not a netCDF id (NetcdfBadid)
> > from /usr/lib/ruby/1.8/numru/gphys/gphys_netcdf_io.rb:520:in `__interpret_files'
> > from /usr/lib/ruby/1.8/numru/gphys/gphys_netcdf_io.rb:316:in `open'
> > from /usr/lib/ruby/1.8/numru/gphys/gphys_io.rb:94:in `open'
> > from /usr/lib/ruby/1.8/numru/gphys/gphys_io.rb:238:in `open_gturl'