SHIDARA Yoji
dara****@shida*****
2009年 9月 22日 (火) 16:16:17 JST
daraです。 TokenMecabを使っている状態でレコードを追加すると SEGVが発生するようです。 バージョンは以下の通りです: mecab of 0.97 groonga commit 1bbbfe8a65a386b2ae07a3f00e2069ef430f2d9a Ruby/groonga r668 以下のスクリプトで確認しています。 #!/usr/bin/env ruby $KCODE='u' require 'groonga' Groonga::Database.create(:path => 'db/groonga') Groonga::Schema.define do |schema| schema.create_table("data", :type => :hash) do |table| table.text("text") end schema.create_table("terms", :type => :patricia_trie, :key_normalize => true, :default_tokenizer => "TokenMecab") do |table| table.index("data.text") end end data = Groonga::Context.default['data'] data.add('1', :text => "test one two") 実行結果は以下の通りです。 dara @ buzztter:~/groonga_test$ gdb --args ruby mecabtokenizer.rb GNU gdb 6.8-debian Copyright (C) 2008 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-linux-gnu"... (no debugging symbols found) (gdb) r Starting program: /usr/bin/ruby mecabtokenizer.rb (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) [Thread debugging using libthread_db enabled] (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) [New Thread 0x7f63951076e0 (LWP 10066)] Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 0x7f63951076e0 (LWP 10066)] 0x00007f6393690e67 in MeCab::Connector::close () from /usr/local/lib/libmecab.so.1 Current language: auto; currently asm (gdb) bt #0 0x00007f6393690e67 in MeCab::Connector::close () from /usr/local/lib/libmecab.so.1 #1 0x00007f63936b8a8e in MeCab::TaggerImpl::~TaggerImpl () from /usr/local/lib/libmecab.so.1 #2 0x00007f63936d9261 in mecab_destroy () from /usr/local/lib/libmecab.so.1 #3 0x00007f6393b65428 in grn_token_fin () at token.c:499 #4 0x00007f6393ab07ba in grn_fin () at ctx.c:615 #5 0x00007f6393ffb9cd in exit () from /lib/libc.so.6 #6 0x00007f6394c39220 in ruby_stop () from /usr/lib/libruby1.8.so.1.8 #7 0x00007f6394c40711 in ruby_run () from /usr/lib/libruby1.8.so.1.8 #8 0x00000000004008b3 in main () (gdb) -- SHIDARA Yoji 本を書きました! http://www.amazon.co.jp/dp/4798119881