Errori 404 casuali durante la modifica dei post

Sto ricevendo errori 404 casuali quando modifico le risposte nel mio forum.

Quando le modifiche funzionano, viene inviata una richiesta PUT all’endpoint /posts/:post_id con una risposta 200.

Ma quando non funzionano, posso vedere negli strumenti per sviluppatori una richiesta PUT a /post_replies/:post_id che restituisce un 404. Quando aggiorno la pagina, gli errori scompaiono e riesco a salvare correttamente la modifica (tramite /posts/:post_id, l’:post_id non cambia).

Non sono sicuro che esista una condizione particolare che possa trasformare erroneamente /posts in /post_replies o se si tratti di un problema diverso. Recentemente ho quadruplicato la RAM del mio server e non ho notato nulla di strano nei log.

Qualsiasi aiuto è apprezzato.

2 Mi Piace

Continuo a ricevere questi errori casuali quando provo a salvare una modifica ai post di altri utenti. Succede sia con i post vecchi che con quelli nuovi, ma sempre in modo casuale:

E il problema si risolve quando ricarico la pagina e salvo di nuovo la modifica:

Sono sulla versione più recente e posso confermare che il problema persiste: quando provo a salvare una modifica su un post di un altro utente, si apre casualmente una finestra di dialogo con il messaggio not_found:

L’URL o la risorsa richiesta non è stato trovato.

Se ricarico la pagina e premo di nuovo il pulsante “Salva modifica”, l’errore scompare e la modifica viene salvata.

Quelle due richieste stanno inviando un PUT a URL diversi.

Giusto. Ma perché? Sto premendo lo stesso pulsante “Salva modifica” nello stesso post. L’unica differenza è un aggiornamento della pagina.

Forse la prossima volta che succede, prova a controllare il backtrace del browser? Dato che sta raggiungendo endpoint diversi, potrebbe passare attraverso metodi diversi nell’applicazione EmberJS.

1 Mi Piace

@Falco È appena successo di nuovo. Questo è tutto ciò che vedo quando apro la console dopo aver ricevuto l’errore:

image

E se provo a salvare di nuovo con la console aperta:

Allora aggiorno la pagina e mi permette di modificare:

image

Questo è il percorso dell’iniziatore (VM73:1 Script):

1 Mi Piace

Ho appena aggiornato alla versione 2.7.0.beta2 e il problema persiste:

  • Prova a modificare la risposta al post 47994
  • PUT https://mydomain.com/post_replies/47994 => 404 L’URL o la risorsa richiesta non è stata trovata. Nella console: Impossibile caricare la risorsa: il server ha risposto con uno status 404 () /post_replies/47994:1
  • Ricarica la pagina
  • Prova a modificare la risposta al post 47994
  • PUT https://mydomain.com/posts/47994 => 200 successo

Se ci sono altre informazioni che potrebbero aiutare nel debug, sono felice di fornirle.

Questo è successo 3 volte oggi in meno di un’ora :sweat_smile:

C’è qualcos’altro che potrei fare per aiutare a individuare questo bug?

@Falco Ho finalmente capito come riprodurre in modo coerente questo bug:

  1. Disabilita enable filtered replies view
  2. Clicca sulla freccia di una risposta:
  3. Clicca sulla freccia per saltare al messaggio originale: image
  4. Clicca sull’icona di modifica:
  5. Apporta una modifica e clicca su “Salva modifiche”. Apparirà una finestra di dialogo che indica che l’URL o la risorsa non sono stati trovati (404).
4 Mi Piace

Grazie @Nacho_Caballero, i passaggi specifici sono stati molto utili. Ho inviato una PR con una correzione: FIX: 404 error when editing an expanded reply by pmusaraj · Pull Request #12504 · discourse/discourse · GitHub

7 Mi Piace

Nessun problema! Una correzione così semplice :sweat_smile:

3 Mi Piace

Come sempre, grazie per la tua pazienza, Nacho: quando fornisci riproduzioni molto dettagliate, riusciamo quasi sempre a preparare una soluzione!

4 Mi Piace