I have unix timestamps associated with data I am getting from an API. These timestamps are being converted to a datetime via Carbon. I found one specific datetime value that keeps throwing errors:
UPDATE `revive_logs` SET `revivee_last_action_at` = '2018-03-11 02:12:33' WHERE `revive_logs`.`id` = 5129189
Incorrect datetime value: '2018-03-11 02:12:33' for column 'revivee_last_action_at' at row 1
It makes no sense because if I switch the time for 2018-03-11 03:12:33 or 2018-03-11 01:12:33 it works fine. The error happens at that specific date, and hour only. If I change to other hours in that same day MySQL has no problem with it.
What am I doing wrong here? I cannot see anything incorrect about the datetime value. It's a valid date. Even phpMyAdmin lets me set this exact time in their date picker tool and it still throws the error there.
CodePudding user response:
If the timezone is
BermudaCanadaCubaGreenlandHaitiMexicoSaint Pierre and MiquelonThe BahamasTurks and Caicos IslandsUnited States
then it is the switch hour between Standard Time and Daylight Saving Time (DST).
On 2018 it was scheduled to Sunday, 11 March 2018 to move clocks from 2 AM to 3 AM.
So there was no time between 02:00:00 and 03:00:00.
