|
Een stempel in een vorm, anders sorteert een gesprek op schrijfwijze
Bart, 14-8: in Berichten stond een bericht van 00:30 boven een antwoord van
20:22 de avond ervoor -- op iOS en op Android allebei, en dat wees al naar hier
in plaats van naar de clients.
De unie achter een gesprek haalde haar stempel uit twee bronnen met een andere
VORM. SQLite's CURRENT_TIMESTAMP schrijft '2026-08-13 22:30:12', een binnenkomend
object draagt '2026-08-13T20:22:00Z', en soms met milliseconden erbij. Alle drie
tekst, dus vergeleken als tekst -- en op plek 10 staat een spatie tegen een T.
Een spatie is kleiner, dus sorteerde binnen dezelfde dag ALLES wat jij stuurde
vóór alles wat binnenkwam, hoe laat het ook was.
Barts eigen geval precies: 00:30 lokaal is 22:30 UTC op de 13e, en dat kwam
daarmee vóór een antwoord van 20:22Z.
strftime leest alle drie en geeft er een vorm voor terug, in UTC. Lukt dat niet,
dan blijft de rauwe waarde staan: dan is die ene rij verkeerd gesorteerd in
plaats van de hele lijst.
Dit ging ook de clients aan zonder dat iemand het zag. new Date('2026-08-13
22:30:12') leest in JavaScript als LOKALE tijd en de T-Z-vorm als UTC -- dezelfde
rij gaf dus een leeftijd die uren verschilde per vorm, en daar hangt in de hemel
de afstand tot het midden aan.
De toetsen hierboven gebruikten overal dezelfde ISO-vorm en konden hier dus niet
op falen. De drie nieuwe zetten de vormen door elkaar zoals de echte database
dat doet, op een eigen site zodat ze de tellingen van de andere niet verstoren.
Nagegaan dat ze ook echt kunnen falen: met de normalisering eruit vallen ze
alle drie om.
Co-Authored-By: Claude Opus 5 <noreply@…>
|