Апокалипсис грядёт

в 13:33, , рубрики: 2038, mariadb, mysql, лень

Есть такая проблема — в 2038м году количество секунд с начала эпохи Unix Time перевалит за величину signed int и исчезнет. Это как проблема 2000 года, только намного сложнее, потому что для неё нужно менять типы данных.

Так вот… в MySQL уже четырнадцать с половиной лет висит просьба что-то сделать на этот счёт. Функции UNIX_TIMESTAMP и FROM_UNIXTIME вообще не могут обрабатывать даты после 19 января 2038го.

Проверить это достаточно просто: попробуйте вот этот запрос.

select unix_timestamp('2038-01-20');

В 2017м добрый человек попытался это исправить, но патч так и не приняли. Проблемы с часовыми поясами и поддержкой 32-битных систем.

Переходить на MariaDB тоже не вариант: там этот баг уже закрыт как слишком сложный.

Апокалипсис грядёт и нам остаётся только молиться… на этих разработчиков.

Автор: Александр

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js