Timestamp时间戳精确到微妙级别,出现bug

timestamp时间戳精确到微妙级别,出现bug

我们一直强调做网站、网站制作对于企业的重要性,如果您也觉得重要,那么就需要我们慎重对待,选择一个安全靠谱的网站建设公司,企业网站我们建议是要么不做,要么就做好,让网站能真正成为企业发展过程中的有力推手。专业的建站公司不一定是大公司,创新互联作为专业的网络公司选择我们就是放心。

自MariaDB5.3版本起,timestamp时间戳精确到微妙级别,但这里存在一个致命bug,它会导致binlog记录的内容损坏,致使闪回恢复功能失效、Canal工具抓取binlog失败。
影响版本MariaDB 5.5/10.0

复现:
我使用的版本为10.0.29-MariaDB-enterprise
Binlog格式为ROW(Mixed不存在此BUG)
Timestamp时间戳精确到微妙级别,出现bug

创建表结构,注意:timestamp(6),精确到微妙

create table hcy(create_time timestamp(6) NOT NULL DEFAULT CURRENT_TIMESTAMP(6));

插入数据

insert into hcy(create_time) values(now());

此时我们查看BINLOG文件,如下图所示:
Timestamp时间戳精确到微妙级别,出现bug

1、时间变成了负数。
2、Corrupted replication event was detected. 检测到复制被损坏。
3、10.0低版本可能会造成主从同步失败。

该bug在MariaDB 10.1版本里修复
官方确认bug地址
https://jira.mariadb.org/browse/MDEV-5377


本文标题:Timestamp时间戳精确到微妙级别,出现bug
URL分享:http://scyanting.com/article/jeoscc.html