Masanori Miyashita
walnu****@gmail*****
2016年 12月 18日 (日) 20:41:09 JST
結城さん お世話になっております。宮下です。 お返事が遅くなり、申し訳ありません。 土日も仕事であったことと、並行してテストデータの作成を行っていたため遅れましたorz >環境構築の項で、RPMパッケージのインストールとソースからのビルドを両方実 >施されているようですが、これは最終的にはソースからビルドした >MySQL/Mroongaが使われることが想定されているということでしょうか? すべてMySQL/Mroonga/Groongaすべてソースからビルドしたものです。 しかし、groonga-develは必要なかったようですね。前任者がdevelもインストールした上でGroongaをソースからビルドしていたので必要かと思い込んでおりました。 >また、エラーの再現手順について、新しいデータベースを作成する所から順番に >このコマンドを実行するとエラーが発生する、というような形で手順を教えてい >ただくことはできますでしょうか? ■再現手順 1)データベース作成 CREATE DATABASE mrn_test; 2)テーブル作成 CREATE TABLE `multi_column` ( `col1` int(11) NOT NULL, `col2` varchar(64) COLLATE utf8_bin NOT NULL, `col3` varchar(64) COLLATE utf8_bin NOT NULL, `col4` int(11) NOT NULL, `col5` bigint(20) NOT NULL, `col6` varchar(255) COLLATE utf8_bin NOT NULL, `col7` bigint(20) NOT NULL, `col8` varchar(255) COLLATE utf8_bin DEFAULT NULL, `col9` datetime DEFAULT NULL, `col10` datetime DEFAULT NULL, PRIMARY KEY (`col1`,`col2`,`col3`,`col4`,`col5`,`col6`,`col7`), KEY `multi_column_ix1` (`col1`,`col2`,`col3`,`col8`,`col7`), KEY `multi_column_ix2` (`col1`,`col2`,`col3`,`col4`,`col8`,`col7`), KEY `multi_column_ix3` (`col1`,`col2`,`col7`,`col5`), FULLTEXT KEY `multi_column_ix4` (`col8`) ) ENGINE=Mroonga DEFAULT CHARSET=utf8 COLLATE=utf8_bin ; 3)データをINSERT source insert.dump ※90万行ほどinsertしたところでエラーが出始めます。 ■エラーログ by groonga.log 2016-12-18 19:30:22.775664|A|ac2d5700|[ii][update][one] failed to create a buffer: <multi_column#multi_column_ix3.index>: <1290899>:<1>:<501928>: size:<12> 2016-12-18 19:30:22.787762|A|ac2d5700|/usr/local/lib/libgroonga.so.0(grn_ii_update_one+0x2c19) [0x7f79dca66bc9] 2016-12-18 19:30:22.787842|A|ac2d5700|/usr/local/lib/libgroonga.so.0(grn_ii_column_update+0x2871) [0x7f79dca6fe5e] 2016-12-18 19:30:22.787923|A|ac2d5700|/usr/local/lib/libgroonga.so.0(grn_column_index_update+0x296) [0x7f79dc8ff837] 2016-12-18 19:30:22.787945|A|ac2d5700|/mysql/MyHome/lib/plugin/ha_mroonga.so(_ZN10ha_mroonga39storage_write_row_multiple_column_indexEPhjP6st_keyP8_grn_obj+0x140) [0x7f79dd1734c0] 2016-12-18 19:30:22.787956|A|ac2d5700|/mysql/MyHome/lib/plugin/ha_mroonga.so(_ZN10ha_mroonga41storage_write_row_multiple_column_indexesEPhj+0x9c) [0x7f79dd17365c] 2016-12-18 19:30:22.787967|A|ac2d5700|/mysql/MyHome/lib/plugin/ha_mroonga.so(_ZN10ha_mroonga17storage_write_rowEPh+0x456) [0x7f79dd17ee66] 2016-12-18 19:30:22.787978|A|ac2d5700|/mysql/MyHome/bin/mysqld(_ZN7handler12ha_write_rowEPh+0xb0) [0x5913a0] 2016-12-18 19:30:22.787989|A|ac2d5700|/mysql/MyHome/bin/mysqld(_Z12write_recordP3THDP5TABLEP9COPY_INFOS4_+0x79) [0x6b8599] 2016-12-18 19:30:22.788000|A|ac2d5700|/mysql/MyHome/bin/mysqld(_Z12mysql_insertP3THDP10TABLE_LISTR4ListI4ItemERS3_IS5_ES6_S6_15enum_duplicatesb+0xabf) [0x6bf9ff] 2016-12-18 19:30:22.788011|A|ac2d5700|/mysql/MyHome/bin/mysqld(_Z21mysql_execute_commandP3THD+0x190c) [0x6d6e8c] 2016-12-18 19:30:22.788022|A|ac2d5700|/mysql/MyHome/bin/mysqld(_Z11mysql_parseP3THDPcjP12Parser_state+0x4c7) [0x6da4c7] 2016-12-18 19:30:22.788033|A|ac2d5700|/mysql/MyHome/bin/mysqld(_Z16dispatch_command19enum_server_commandP3THDPcj+0x189c) [0x6dbe5c] 2016-12-18 19:30:22.788043|A|ac2d5700|/mysql/MyHome/bin/mysqld(_Z24do_handle_one_connectionP3THD+0x10d) [0x6a423d] 2016-12-18 19:30:22.788054|A|ac2d5700|/mysql/MyHome/bin/mysqld(handle_one_connection+0x42) [0x6a4372] 2016-12-18 19:30:22.788086|A|ac2d5700|/mysql/MyHome/bin/mysqld(pfs_spawn_thread+0x127) [0xaa8e47] 2016-12-18 19:30:22.788097|A|ac2d5700|/lib64/libpthread.so.0(+0x7aa1) [0x7f79e0219aa1] この現象ですが少なくともデータの内容にもよると思うのですが100万行前後無いと発生しない可能性があります。 こちらでテストデータを作成したのでよろしければ、提供したいのですがいかがでしょうか。アップローダの指定などがありましたら教えていただけますと幸いです。 サイズは32MB程度です。 内容は、以下を予定しております。 ・create table のsql ・insertのsql ・再現当時のエラーログならびに、ターミナルへのsourceコマンドの結果 また、少し話は変わりますが、上記エラーは6.09~6.11で発生いたしました。 当初6.11にアップグレードしたのですが、このエラーで詰まってしまい、しかし時間もあまりないことから、 一つ一つダウングレードを行い6.09まで行いました。6.09までなのは以下のエラーを回避したかったからです。 インデックスの削除チェック漏れを修正しました。ヒットすべきものが検索結果から漏れてしまっていました。Groonga > 6.0.3以降がこの問題の影響を受けます。 [groonga-dev, 04107] [かずひこさんが報告] そのため、次にMroonga6.02/Groonga6.0.2にダウングレードしましたが今度は4.11のときと同じ不具合が発生し、 最終的には6.11でラッパーモードのして解決しました。ちなみに、4.11の不具合もラッパーモードでは発生しませんでした。 過去のMLを拝見したところ、マルチインデックス関係でラッパーモードでは発生しないがストレージモードでは発生するという事象があったようで それにヒントを得て検証してみたところうまくいった状態です。 以上、よろしくお願いいたします。 2016年12月16日 15:52 YUKI Hiroshi <yuki****@clear*****>: > クリアコード 結城です。 > > 環境構築の項で、RPMパッケージのインストールとソースからのビルドを両方実 > 施されているようですが、これは最終的にはソースからビルドした > MySQL/Mroongaが使われることが想定されているということでしょうか? > > また、エラーの再現手順について、新しいデータベースを作成する所から順番に > このコマンドを実行するとエラーが発生する、というような形で手順を教えてい > ただくことはできますでしょうか? > > それから、差し支えなければMroonga(Groonga)のログもご確認・ご提供いただ > けますでしょうか? > ログは /var/lib/mysql/groonga.log の位置に出力されているはずで、エラー発 > 生時の詳細情報が出力されている可能性があります。 > > -- > 結城 洋志 <YUKI Hiroshi> > E-mail: yuki****@clear***** > > 株式会社クリアコード > 〒170-0005 東京都豊島区南大塚3-29-9 > 中野ビル3階 > TEL : 03-5927-9440 > FAX : 03-5927-9441 > WWW : http://www.clear-code.com/ > > _______________________________________________ > groonga-dev mailing list > groon****@lists***** > http://lists.osdn.me/mailman/listinfo/groonga-dev > -------------- next part -------------- HTML$B$NE:IU%U%!%$%k$rJ]4I$7$^$7$?(B...Download