今日は GC のパラメータを環境変数で変更できるというパッチが入っています。
kosaki:r31032 2011-03-06 21:51:17 +0900
sample/list.rb でインスタンス変数の未初期化で警告が出ていたので追加。 [ruby-core:35435] [Bug#4471]
akr:r31033 2011-03-06 22:21:31 +0900
ext/openssl/ossl_pkey_ec.c の関数マクロの引数にかっこをつける修正です。
kosaki:r31034 2011-03-06 23:21:31 +0900
Process.maxgroups= で設定できる上限を 65535 に引き上げています。 [ruby-core:35430] を参照。追加されたコメントにもありますが、この上限値は環境で実にまちまちですね。
kosaki:r31035 2011-03-06 23:28:02 +0900
Process#maxgroups= で負の値が渡された時のチェックをします。 [ruby-core:35426] [Bug#4467]
kosaki:r31036 2011-03-06 23:47:27 +0900
configure での rlim_t の型のチェックをべたに書いていたのを RUBY_REPLACE_TYPE という関数を利用するようにしています。これにより RLIM2NUM/NUM2RLIM というマクロが定義されます。
kosaki:r31037 2011-03-07 00:25:58 +0900
Process.groups で取得する GID の配列を最大数まで用意するのではなくあらかじめグループ数を調べてから確保するようにしています。グループ最大数を引き上げたのでスタックを大量に消費するのを避けるためでしょう。
svn:r31038 2011-03-07 00:26:04 +0900
version.h の日付更新。
nobu:r31039 2011-03-07 08:38:31 +0900
date の拡張ライブラリ部分で long long および long double を使っているところを long/double にするなど変数の型を変更しています。long long や long double は直接使ってはいけないらしい。
また extcond.rb から不要になった roundl/floorl のチェックを削っています。
nobu:r31040 2011-03-07 08:39:04 +0900
r31039 のぶんの ChangeLog のエントリ追加です。
nobu:r31041 2011-03-07 09:05:35 +0900
string.c(tr_trans) の警告除去のため last を int から unsigned int に変更。
nobu:r31042 2011-03-07 09:06:08 +0900
Windows(mingw) では rlim_t は存在しても(?) getrlimit/setrlimit は存在しないので #ifdef のチェックを追加しています。 cygwin 版だと存在するのかも。
nagachika:r31043 2011-03-07 14:15:22 +0900
r31023 で test_parallel.rb 内の assert を修正したつもりが、追加しているだけで元からある assert を消していなかったのでそれを消したという修正です。チケットに貼ったパッチはちゃんと書き換えになってたのにコミットした内容が違うという。申し訳ありません。 [Bug #4466]
matz:r31044 2011-03-07 17:39:39 +0900
GC のパラメータを環境変数で切り替えるというパッチを取り込んでいます。が誤操作で最近のコミットを巻き戻してしまっているそうで差分がたいへんなことになっています。実際に入った内容は以下の diff で観ることができます。github 便利。
で RUBY_GC_MALLOC_LIMIT、RUBY_HEAP_MIN_SLOTS、RUBY_FREE_MIN といった環境変数で GC の動作に関係するパラメータを設定できるようです。でもいきなり printf() とかしちゃうので本番で使うような感じじゃないですね。元の gist にはこの printf() 等はないのでもしかしたら消し忘れかも。
パラメータの内容は Ruby の GC について知っていればだいたい想像が付くと思います。RUBY_FREE_MIN は free スロットがどのくらい減ってきたら新しいヒープを確保するかのパラメータです。
svn:r31045 2011-03-07 17:39:45 +0900
version.h の日付更新。
matz:r31046 2011-03-07 17:44:45 +0900
r31044 で巻き戻されてしまったぶんを元に戻しています。