Endo Akira
endo4****@goo*****
2012年 5月 14日 (月) 14:03:57 JST
遠藤です。
rrroongaだけでもSEGVを起こしました。
環境は昨日と同じく
OS Windows7Pro 64bit
Ruby、Devkit rubyinstaller.org 32bit
rroonga 2.0.4 x86-mingw32
以下プログラムです。
Groonga::Database.create(path: "tmp/database.db")
Groonga::Schema.create_table("Items", type: :hash)
Groonga::Schema.change_table("Items") do |table|
table.text("subject")
table.text("content")
end
Groonga::Schema.create_table("Terms",
type: :patricia_trie,
key_normalize: true,
default_tokenizer: "TokenBigram")
Groonga::Schema.change_table("Terms") do |table|
table.index("Items.content")
table.index("Items.subject")
end
以下エラーメッセージです。
groonga.rb: [BUG] Segmentation fault
ruby 1.9.3p194 (2012-04-20) [i386-mingw32]
-- Control frame information -----------------------------------------------
c:0001 p:0000 s:0002 b:0002 l:001654 d:001654 TOP
-- C level backtrace information -------------------------------------------
C:\Windows\SysWOW64\ntdll.dll(ZwWaitForSingleObject+0x15) [0x779af8b1]
C:\Windows\syswow64\kernel32.dll(WaitForSingleObjectEx+0x43) [0x76881194]
C:\Windows\syswow64\kernel32.dll(WaitForSingleObject+0x12) [0x76881148]
C:\Ruby193\bin\msvcrt-ruby191.dll(rb_vm_bugreport+0xf9) [0x62e5c589]
C:\Ruby193\bin\msvcrt-ruby191.dll(rb_name_err_mesg_new+0x17a) [0x62d3a7e2]
C:\Ruby193\bin\msvcrt-ruby191.dll(rb_bug+0x2f) [0x62d3b4fb]
C:\Ruby193\bin\msvcrt-ruby191.dll(rb_check_safe_str+0x1a4) [0x62dee168]
[0x004011e6]
C:\Windows\syswow64\kernel32.dll(GetProfileStringW+0x12aa3) [0x768c003f]
C:\Windows\SysWOW64\ntdll.dll(RtlKnownExceptionFilter+0xb7) [0x77a074df]
Rubyが落ちているのですから、rubyのMLの方が適切でしょうか。
遠藤 明
-- Other runtime information -----------------------------------------------
2012/05/13 (Sun) 16:35, "Endo Akira" <endo4****@goo*****> wrote:
> 遠藤と申します。
> rroongaを愛用させていただき、利用例にも載せていただきました。
>
> 今回新たなプロジェクトで久しぶりにいじっていましたら、珍しく
> RubyがSegmentation faultでこけました。
>
> OSはWindows7Pro 64bit
> Ruby、Devkitはrubyinstaller.orgの最新のもの
> rroongaは2.0.4 x86-mingw32です。
>
> 再現する最小のコードは下記のとおりですが、問題はhtmlsディレクトリで
> 7万件以上のファイルがはいっています。
> ファイル数が少しのディレクトリのglobでは正常に終了します。
> また、groongaデータベースを作成せず、Dir.glob("[htmls/*")だけなら
> 正常終了します。
>
> require 'groonga'
> Groonga::Database.create(path: "tmp/ml.db")
> Groonga::Schema.create_table("Items", type: :hash)
> Dir.glob("htmls/*").each do |f|
> end
>
> 以下がエラーメッセージです。
> my.rb:4: [BUG] Segmentation fault
> ruby 1.9.3p194 (2012-04-20) [i386-mingw32]
>
> -- Control frame information -----------------------------------------------
> c:0004 p:---- s:0010 b:0010 l:000009 d:000009 CFUNC :glob
> c:0003 p:0079 s:0006 b:0006 l:002374 d:0020b4 EVAL my.rb:4
> c:0002 p:---- s:0004 b:0004 l:000003 d:000003 FINISH
> c:0001 p:0000 s:0002 b:0002 l:002374 d:002374 TOP
>
> -- Ruby level backtrace information ----------------------------------------
> groonga.rb:4:in `<main>'
> groonga.rb:4:in `glob'
>
> -- C level backtrace information -------------------------------------------
> C:\Windows\SysWOW64\ntdll.dll(ZwWaitForSingleObject+0x15) [0x77b1f8b1]
> C:\Windows\syswow64\kernel32.dll(WaitForSingleObjectEx+0x43) [0x76f01194]
> C:\Windows\syswow64\kernel32.dll(WaitForSingleObject+0x12) [0x76f01148]
> C:\Ruby193\bin\msvcrt-ruby191.dll(rb_vm_bugreport+0xf9) [0x62e5c589]
> C:\Ruby193\bin\msvcrt-ruby191.dll(rb_name_err_mesg_new+0x17a) [0x62d3a7e2]
> C:\Ruby193\bin\msvcrt-ruby191.dll(rb_bug+0x2f) [0x62d3b4fb]
> C:\Ruby193\bin\msvcrt-ruby191.dll(rb_check_safe_str+0x1a4) [0x62dee168]
> [0x004011e6]
> C:\Windows\syswow64\kernel32.dll(GetProfileStringW+0x12aa3) [0x76f4003f]
> C:\Windows\SysWOW64\ntdll.dll(RtlKnownExceptionFilter+0xb7) [0x77b774df]
>
> -- Other runtime information -----------------------------------------------
> 略
>
> よろしくお願いします。
>
> 遠藤 明
>
> _______________________________________________
> groonga-dev mailing list
> groon****@lists*****
> http://lists.sourceforge.jp/mailman/listinfo/groonga-dev
>