Details
-
New Feature
-
Status: In Testing (View Workflow)
-
Critical
-
Resolution: Unresolved
-
None
Description
Currently timestamp is 32-bit signed, although negative values are rejected, so it is de facto 31-bit, allowing values from 1970 to 2038.
We can make it 32-bit unsigned extending timestamp range to 2106, and it won't require many changes to the storage.
Storage of timestamp is not affected but the change.
However storage of 'row_end' for system versioned tables must change from storing a 2038 based timestamp to a 2106 based one.
Attachments
Issue Links
- causes
-
MDEV-32930 mysqlbinlog --verbose shows incorrect values for timestamps >= 2^31 if binlog was created with mysql56_temporal_format=off
-
- Open
-
- is duplicated by
-
MDEV-9444 MariaDB needs to be Y2038-compliant
-
- Closed
-
-
MDEV-20192 Change timestamp to 64-bit integer for number of seconds to extend its life with EPOCH defined as '1970-01-01 00:00:01 UTC'
-
- Closed
-
-
MDEV-26736 UNIX_TIMESTAMP doesn't work beyond 2038 (aka y2.038k)
-
- Closed
-
- relates to
-
MDEV-15750 preserve MYSQL_TYPE_TIMESTAMP in temporal arithmetics
-
- Stalled
-
-
MDEV-32582 Events fuctionality after 2038
-
- Open
-
-
MDEV-341 64-bit support in FROM_UNIXTIME()
-
- Open
-
-
MDEV-10018 Timestamp with time zone
-
- Open
-
-
MDEV-32496 TIMESTAMP variant to support YEAR range -4713 and +9999
-
- Open
-