Inserting fractional seconds into MySQL 5.6 master breaks consistency on MariaDB 10 slave

Description

Inserting a fractional second into MySQL 5.6 and MariaDB yields different results, and as a consequence, replicating from a MySQL 5.6 master into a MariaDB 10 slave creates an inconsistent slave.

On Oracle/Percona MySQL 5.6 the value is rounded:

On MariaDB 10 it is not:

Inconsistent MariaDB slave test:

This issue affects both datetime and timestamp column types.

MariaDB should have same behaviour regarding fractional seconds as Oracle and Percona, or interoperability is compromised. For example, a pt-table-checksum always fails due to these rounding differences when comparing a MariaDB slave against a non MariaDB master.

Until this bug is fixed we will be unable to use multi source replication, which was the primary reason for us to use MariaDB.

Environment

None

Assignee

Alexander Barkov

Reporter

Rick Pizzi

Labels

None

Components

Affects versions

Priority

Critical
Configure