Zdublowany użytkownik na liście ocen

1

@UglyMan zostaje cudownie rozmnożony w momencie, gdy najadę kursorem liczbę głosów pod tym komentarzem - na razie nie zaobserwowałem podobnego problemu gdzie indziej. Wygląda to tak samo przy wyświetlaniu "najpopularniejszych wpisów na Mikroblogu" na stronie głównej, jak i przy wyświetlaniu tego konkretnego wpisu.

Sprawdziłem - podpowiadaczka nicków nie widzi żadnego innego użytkownika o choćby podobnym nicku :P

Przed najechaniem:
screenshot-20210317184401.png

Po najechaniu:
screenshot-20210317184300.png

Odświeżanie nie do końca pomaga - po odświeżeniu liczba głosów się zgadza, wystarczy jeszcze raz najechać kursorem i już jest z powrotem popsute :)

Czyszczenie cache nic nie daje. Będąc niezalogowanym też widzę to samo.

Przeglądarki:

  • Firefox 84
  • Chromium 89
1

Potwierdzam na Firefox 86.0, zalogowany. 5 głosów, @UglyMan dwa razy.


UPDATE Potwierdzam na Chromium 88.0.4324.182 (Developer Build), niezalogowany.


UPDATE2 Potwierdzam na Chromium 88.0.4324.182 (Developer Build), zalogowany.


UPDATE3 Potwierdzam na Firefox 86.0, niezalogowany. I teraz dopiero zauważyłem, że liczba głosów zwiększa się do 6 po najechaniu, a zmniejsza do 5 po odświeżeniu strony.


UPDATE4 W konsoli (Firefox) po najechaniu pojawia się tylko to:

XHR GET https://4programmers.net/Mikroblogi/Voters/97469

UPDATE5 Powyższe żądanie zwraca taki JSON:

{"count":6,"users":["cerrato","Yukiteru Gromadzki","PerlMonk","UglyMan","UglyMan","PanamaJoe"]}
3

Czyli moja wina

2

Okazało się że w tabeli są dwa rekordy. Widocznie poszły jakoś 2 requesty. Niby ORM sprawdza przed dodaniem czy taki rekord istnieje, ale widocznie transakcja nie została zakończona. Myślę, że rozwiązaniem będzie dodanie klucza UNIQUE w tabeli z głosami.

1 użytkowników online, w tym zalogowanych: 0, gości: 1