timestamp时间戳精确到微妙级别,出现bugide
自MariaDB5.3版本起,timestamp时间戳精确到微妙级别,但这里存在一个致命bug,它会致使binlog记录的内容损坏,导致闪回恢复功能失效、Canal工具抓取binlog失败。
影响版本MariaDB 5.5/10.0工具
复现:
我使用的版本为10.0.29-MariaDB-enterprise
Binlog格式为ROW(Mixed不存在此BUG)blog
建立表结构,注意:timestamp(6),精确到微妙get
create table hcy(create_time timestamp(6) NOT NULL DEFAULT CURRENT_TIMESTAMP(6));同步
插入数据it
insert into hcy(create_time) values(now());io
此时咱们查看BINLOG文件,以下图所示:event
一、时间变成了负数。
二、Corrupted replication event was detected. 检测到复制被损坏。
三、10.0低版本可能会形成主从同步失败。mariadb
该bug在MariaDB 10.1版本里修复
官方确认bug地址
https://jira.mariadb.org/browse/MDEV-5377table