The function MAKETIME() in MariaDB does not preserve fractional digits:

It works as expected in MySQL-5.6:

A possibly related problem:

The above result is wrong.

It seems 59.9 is rounded to 60, which makes a wrong time '00:00:60', hence NULL.

The expected result is '00:00:59.9'.

More examples:

The expected column type is time(0).

None