Il thread discute un bug in cui i messaggi della chat vengono visualizzati in ordine errato per tutti gli utenti. fufie descrive come alcuni messaggi vengano inseriti sopra o sotto quelli già presenti, indipendentemente dal tempo reale di invio. L’utente ipotizza che il problema sia legato alla PR #34592, che utilizza l’orologio del client per i timestamp dei messaggi. Vengono notati pattern specifici: il bug si manifesta spesso con determinati utenti e può causare risposte che appaiono cronologicamente prima del messaggio a cui rispondono.
j.jaffeux conferma che la PR citata era stata introdotta per risolvere problemi simili, ma ammette che la segnalazione potrebbe evidenziare un difetto nella logica implementata. eisammy riporta che il problema persiste su vari browser e dispositivi, risultando particolarmente evidente quando i messaggi vengono inviati nello stesso istante o minuto. Infine, j.jaffeux indica una nuova pull request (#44035) che dovrebbe correggere definitivamente il problema.
Ho notato che a volte, quando un utente invia un messaggio, questo viene pubblicato sopra altri messaggi già presenti nella chat. D’altra parte, a volte accade il contrario, dove un utente invia un messaggio e questo rimane ostinatamente in fondo alla chat, anche quando vengono inviati messaggi più recenti.
Ho fatto alcune indagini e l’unica vera traccia che ho è questo PR #34592, che è stato unito intorno al periodo in cui abbiamo iniziato a riscontrare il problema, a fine agosto/inizio settembre. Penso che sia correlato perché consente di utilizzare l’ora del client come timestamp per i messaggi, e ciò si adatterebbe bene come spiegazione per alcuni dei problemi che stiamo riscontrando. Non sono del tutto sicuro che il PR sia correlato, poiché ci sono alcune stranezze che non tornano del tutto, ma penso che sarebbe un buon punto di partenza per indagare.
Per essere perfettamente chiari, questo non è un problema solo da parte mia, i messaggi vengono visualizzati nell’ordine sbagliato a TUTTI gli utenti nella chat.
Ecco alcune altre cose che abbiamo osservato che potrebbero aiutare a indagare su questo problema:
Il bug non è affatto deterministico, accade solo a volte, ma quando accade di solito accade intorno a utenti specifici e a tutti i loro messaggi. Ad esempio, un utente avrà tutti i suoi messaggi inviati “nel passato” o “nel futuro”, per così dire (cioè prima di altri messaggi più vecchi, o dopo messaggi più recenti).
Sembra accadere in modo più coerente con alcuni utenti specifici, il che potrebbe significare che è correlato a un routing specifico o alla latenza di utenti diversi.
Qualcuno può rispondere direttamente a un messaggio che vede in chat, e la risposta verrà ANCORA registrata come avvenuta PRIMA del messaggio a cui sta rispondendo, portando a situazioni molto strane come questa:
Sì, quello avrebbe dovuto risolvere questo problema, e penso ancora che lo faccia in molti casi, ma la tua segnalazione potrebbe mostrare che c’è un difetto in questa logica.
Cercherò di indagare nelle prossime settimane, grazie.
Il problema persiste, almeno nella mia istanza: si verifica sia nei browser basati su Chromium sia in Firefox, sia su desktop sia su mobile. La disordine diventa più evidente quando i messaggi vengono inviati a intervalli di pochi millisecondi, e sembra che quando i messaggi vengono inviati nello stesso minuto, l’ordine errato risulti ancora più visibile.