smztks
smztk****@gmail*****
2013年 3月 28日 (木) 22:18:42 JST
お世話になっております。 清水と申します。 mroongaを利用していたところ、気になる挙動がありましたので、ご連絡させて頂きました。 mroongaストレージモードにて特定の数値(bigint型、unsignedの有無両方)を登録すると、特定の数値が検索できない状態となります。 以下再現手順となります。 CREATE TABLE IF NOT EXISTS `test` ( `id` bigint unsigned, `text` varchar(255), ) ENGINE=mroonga DEFAULT CHARSET utf8; INSERT INTO test(`id`,`text`) VALUES (317173755057152000, 'aaa'); INSERT INTO test(`id`,`text`) VALUES (317173755057152002, 'bbb'); SELECT * FROM test; 2件 SELECT * FROM test WHERE id = 317173755057152000; 2件 SELECT * FROM test WHERE id = 317173755057152002; 0件 また、以下のようにユニークキー制約をかけると、検出結果も変わってきます。 CREATE TABLE IF NOT EXISTS `test` ( `id` bigint, `text` varchar(255), UNIQUE unq_id(id) ) ENGINE=mroonga DEFAULT CHARSET utf8; SELECT * FROM test; 2件 SELECT * FROM test WHERE id = 317173755057152000; 1件 SELECT * FROM test WHERE id = 317173755057152002; 0件 varchar型を使う等もありましたが、できればbigint型を使用したいので お手数ですが、回避策等ありましたら、ご教示のほどよろしくお願い致します。 mroongaはソースからのビルドを利用しています。 mroonga_version 3.0.2 groonga.x86_64 3.0.2-0.el6 @groonga groonga-devel.x86_64 3.0.2-0.el6 @groonga groonga-libs.x86_64 3.0.2-0.el6 @groonga groonga-normalizer-mysql.x86_64 1.0.2-0.el6 @groonga groonga-plugin-suggest.x86_64 3.0.2-0.el6 @groonga groonga-tokenizer-mecab.x86_64 3.0.2-0.el6 @groonga mecab.x86_64 0.995-1.el6 @groonga mecab-ipadic.x86_64 2.7.0.20070801-6.el6.1 MySQL: mysql55.x86_64 5.5.30-1.ius.el6 @ius mysql55-devel.x86_64 5.5.30-1.ius.el6 @ius mysql55-libs.x86_64 5.5.30-1.ius.el6 @ius mysql55-server.x86_64 5.5.30-1.ius.el6 @ius mysqlclient16.x86_64 5.1.61-1.ius.el6 @ius OS: CentOS 6.4 64bit