Description:
When trying to schedule a downtime with a date in 2045 in Checkmk Community (RAW), the UI rejects it with an “invalid UNIX timestamp” error.
This points to the downtime scheduling logic being constrained by the signed 32-bit Unix timestamp limit, which overflows on January 19, 2038 (the well-known “Year 2038 problem”). Any date beyond that boundary is apparently being rejected or mishandled internally.
Suggested fix:
Checkmk should migrate downtime timestamp handling (and any other timestamp fields affected by the same limitation) to use an unsigned 32-bit integer, or ideally a 64-bit integer, instead of a signed 32-bit one. Using unsigned 32-bit would push the ceiling out to the year 2106, and 64-bit would effectively remove the limit for any practical purpose (it won’t be my problem lol).
Is there any workaround or I’m missing something?