Verificeret mod app@9d146f9, 16 skal genverificeres, 0 brudt
MySQL NOW() er ikke nødvendigvis UTC, men kolonnerne er
Fælde
faelde.platform.mysql-now-er-ikke-utc
Appen og kolonnerne er UTC, så en SQL der sammenligner med NOW() kan ramme to timer ved siden af.
Felter
- symptom
- Et bilags eller jobs alder i en ad hoc-forespørgsel er to timer for høj, når den regnes med NOW().
- aarsag
- Appens tidszone er UTC, og kolonner skrives i UTC. NOW() følger databaseserverens tidszone, og forbindelsen sætter ingen. Er serveren på dansk tid, er NOW() 120 minutter foran om sommeren. Serverens egen tidszone er ikke læst her, så størrelsen af forskydningen er ikke verificeret.
- saadan undgaas
- Brug UTC_TIMESTAMP() eller send et tidspunkt med som parameter. Tjek SELECT @@global.time_zone, @@session.time_zone, før du tror på en alder.
- relaterede
Prosa
Delvist verificeret: appens UTC og forbindelsen uden tidszone står i koden. Serverens tidszone og de 120 minutter er fra recon og er ikke målt.
Kilder
kode: app config/app.php · timezoneverificeret
Bruges af
Ingen andre entiteter peger herhen endnu.