Details
-
New Feature
-
Status: Closed (View Workflow)
-
Critical
-
Resolution: Fixed
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
-
MDEV-33013 versioning.insert2 fails on 32-bit with wrong result
- Closed
-
MDEV-33017 Assertion `temp > 1969' fails in Field_timestamp::val_str on 32-bit
- Closed
-
MDEV-33032 Live and dump upgrade from previous versions to the extended timestamp fails for system-versioned tables
- Closed
-
MDEV-33239 mysqlbinlog cannot parse events written with system timestamp 4294967295
- Closed
-
MDEV-33248 Connect engine does not support 32-bit timestamp
- Closed
-
MDEV-33302 Columnstore does not support 32-bit timestamps: CAL0001: MCS-2025: Data truncated for column
- Open
-
MDEV-33310 mariadb-upgrade does not fix InnoDB versioned tables upon upgrade to 32-bit timestamp
- Closed
-
MDEV-33358 ROW END needs to be adjusted to 32-bit timestamp upon OM => NS replication
- Closed
-
MDEV-33718 mariadb-dump help refers to the wrong version for timestamp upgrades
- Closed
-
MDEV-34121 Extension of timestamp range can cause OM=>NS replication discrepancy and failure
- Open
- is blocked by
-
MDEV-33449 improving repair of tables
- Closed
- 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-16135 Service does not start if date set beyond Y2038
- Closed
-
MDEV-32582 Events fuctionality after 2038
- Open
-
MDEV-33381 armhf: MTR failures in Spider and versioning tests
- Open
-
MDEV-33449 improving repair of tables
- Closed
-
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
-
MDEV-33442 REPAIR TABLE corrupts UUIDs
- Closed
- links to