Se acerca el apocalipsis

Existe tal problema: en 2038, el n煤mero de segundos desde el comienzo de la era de Unix Time exceder谩 el valor de int firmado y desaparecer谩. Esto es como el problema de 2000, solo que mucho m谩s complicado, porque para ello necesitas cambiar los tipos de datos.

Entonces ... en MySQL, durante catorce a帽os y medio, se ha colgado una solicitud para corregir las funciones UNIX_TIMESTAMP y FROM_UNIXTIME, que no pueden procesar fechas posteriores al 19 de enero de 2038. Estas son funciones para convertir fechas a Unixtime y viceversa.

Comprobar esto es bastante simple: intente esta consulta.

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

En 2017, una persona amable intent贸 arreglarlo, pero el parche nunca fue aceptado. Problemas con zonas horarias y soporte para sistemas de 32 bits.

Cambiar a MariaDB tampoco es una opci贸n: all铆 este error ya est谩 cerrado como demasiado complicado.

Se acerca el apocalipsis y solo podemos rezar ... por estos desarrolladores.

PD Ahora, en serio: hay una advertencia en la documentaci贸n de que el tipo TIMESTAMP se convierte en una calabaza despu茅s de 2038. Pero nadie advirti贸 sobre las funciones de conversi贸n de tiempo. Resulta que todos los lenguajes de programaci贸n de Unix y muchos ya han cambiado a marcas de tiempo de 64 bits, y solo las funciones de MySQL dejar谩n de entender Unixtime sin raz贸n aparente.

Source: https://habr.com/ru/post/485546/


All Articles