Masafumi Yokoyama
yokoy****@clear*****
2015年 7月 1日 (水) 17:08:54 JST
横山です。 On 2015年07月01日 16:55, Susumu Yata wrote: > 矢田です. > > Ubuntu 14.04 32-bit 環境で試してみたところ,以下に示す結果となりました. > ただ, 1970-00-00 だとエラーで 1970-01-01 に修正されるケースも考えられるので, > 1970 は避けて 1990-00-00 とかにした方が良いと思います. ご確認ありがとうございます!確かにそうですね。 1970 は避けるようにしようと思います。 > ==== 0000-00-00 の場合 > > mysql> CREATE TABLE ranges ( > -> id int PRIMARY KEY, > -> start datetime, > -> end datetime, > -> UNIQUE KEY range_key(start, end) > -> ) ENGINE = Mroonga; > Query OK, 0 rows affected (0.06 sec) > > mysql> INSERT INTO ranges VALUES (1, "0000-00-00 00:00:00", > "2012-10-05 23:59:59"); > Query OK, 1 row affected, 1 warning (0.03 sec) > > mysql> SELECT * FROM ranges; > +----+---------------------+---------------------+ > | id | start | end | > +----+---------------------+---------------------+ > | 1 | 1970-01-01 00:00:00 | 2012-10-05 23:59:59 | > +----+---------------------+---------------------+ > 1 row in set (0.00 sec) > > ====> 1990-00-00 の場合 > > mysql> CREATE TABLE ranges ( > -> id int PRIMARY KEY, > -> start datetime, > -> end datetime, > -> UNIQUE KEY range_key(start, end) > -> ) ENGINE = Mroonga; > Query OK, 0 rows affected (0.05 sec) > > mysql> INSERT INTO ranges VALUES (1, "1990-00-00 00:00:00", > "2012-10-05 23:59:59"); > Query OK, 1 row affected, 1 warning (0.03 sec) > > mysql> SELECT * FROM ranges; > +----+---------------------+---------------------+ > | id | start | end | > +----+---------------------+---------------------+ > | 1 | 1990-01-01 00:00:00 | 2012-10-05 23:59:59 | > +----+---------------------+---------------------+ > 1 row in set (0.00 sec) > > 2015-07-01 16:21 GMT+09:00 Masafumi Yokoyama <myoko****@gmail*****>: >> 横山です。 >> >> 書き忘れましたが、これはストレージモードの場合です。 >> ラッパーモードでは。。。どうなるんでしょうか。。。 >> >> >> >> 2015年7月1日 16:17 Masafumi Yokoyama <yokoy****@clear*****>: >>> 横山です。 >>> >>> 32bit環境で、Mroongaのテストが失敗するようです。 >>> >>> MariaDB (10.1) バンドル作業用の自動テストが32bit環境を使っていて、 >>> エラーが出るとの報告をもらいました。せっかくなので共有します。 >>> >>> 失敗するのは以下のように0000年を使っているテストです。 >>> https://github.com/mroonga/mroonga/blob/master/mysql-test/mroonga/storage/index/multiple_column/unique/datetime/r/insert_delete_insert_invalid_value.result >>> >>> どうやら32bit環境では0000年を扱えない(1970±68まで?)ので、 >>> 上のテストだと0000-01-01を期待しているのに結果が1970-01-01に >>> なってしまいます。 >>> >>> このテストは0月0日が1月1日になることをテストしていて、年は >>> 重要でないと思うので、ひとまず0000年ではなく1970年あたりを >>> 使うように修正しておきます。 >>> >>> >>> -- >>> 横山 昌史 <Masafumi Yokoyama> >>> E-mail: yokoy****@clear***** >>> 株式会社クリアコード >>> 〒170-0005 東京都豊島区南大塚3-29-9 >>> Tel: 03-5927-9440 >>> Web: http://www.clear-code.com/ >>> >>> Groongaベースの全文検索システムを総合サポート: >>> http://groonga.org/ja/support/ >>> >>> _______________________________________________ >>> groonga-dev mailing list >>> groon****@lists***** >>> http://lists.osdn.me/mailman/listinfo/groonga-dev >> _______________________________________________ >> groonga-dev mailing list >> groon****@lists***** >> http://lists.osdn.me/mailman/listinfo/groonga-dev > > > -- 横山 昌史 <Masafumi Yokoyama> E-mail: yokoy****@clear***** 株式会社クリアコード 〒170-0005 東京都豊島区南大塚3-29-9 Tel: 03-5927-9440 Web: http://www.clear-code.com/ Groongaベースの全文検索システムを総合サポート: http://groonga.org/ja/support/