Moderatore sposta post, errore interno 500, come risolvere

Ciao a tutti,

quando proviamo a spostare un post da un thread a un altro, a volte otteniamo un errore ‘500 internal server error’.

Esiste qualche tutorial su come risolvere problemi di questo tipo? Dove posso trovare i file di log per ottenere dettagli sul problema?

Grazie per ogni risposta :slight_smile:

Saluti, Ronny

Stiamo riscontrando anche errori 500 durante lo spostamento dei post. Sono riuscito a riprodurlo spostando un post in un altro argomento e poi tentando di spostarlo di nuovo nell’argomento originale.

Ecco i dettagli:

SyntaxError: Unexpected token < in JSON at position 0
    at Function.parse [as parseJSON] (<anonymous>)
    at t (_application-1aa5dba826bc3ed623e07f37fc542db9746ecf4a5fcf6b519e5921036bface8d.js:12468)
    at _application-1aa5dba826bc3ed623e07f37fc542db9746ecf4a5fcf6b519e5921036bface8d.js:34707
    at f (_ember_jquery-d430881a3fb1403871256e5a02423c4b20a78793685e92088613ca9a701baf88.js:70136)
    at T (_ember_jquery-d430881a3fb1403871256e5a02423c4b20a78793685e92088613ca9a701baf88.js:70309)
    at E (_ember_jquery-d430881a3fb1403871256e5a02423c4b20a78793685e92088613ca9a701baf88.js:70295)
    at y (_ember_jquery-d430881a3fb1403871256e5a02423c4b20a78793685e92088613ca9a701baf88.js:70231)
    at t.invoke (_ember_jquery-d430881a3fb1403871256e5a02423c4b20a78793685e92088613ca9a701baf88.js:64637)
    at e.t.flush (_ember_jquery-d430881a3fb1403871256e5a02423c4b20a78793685e92088613ca9a701baf88.js:64527)
    at e.t.flush (_ember_jquery-d430881a3fb1403871256e5a02423c4b20a78793685e92088613ca9a701baf88.js:64731)

Grazie per la tua risposta!

Nel frattempo ho individuato il problema nella tabella post_timings del database. In questa tabella viene memorizzato a quali post gli utenti hanno già letto nei thread. In circostanze a me sconosciute può succedere che il server tenti di scrivere nella tabella voci che esistono già.

Ho cercato nei log e ho trovato un indizio relativo a questa tabella del database. Purtroppo non ricordo più quali log ho consultato… :confused:

La soluzione per me è stata semplicemente cancellare il contenuto della tabella. Tutti gli utenti hanno perso la traccia dei thread letti e alcune persone hanno dovuto scrivere un nuovo messaggio in thread esistenti solo per sovrascrivere i dati memorizzati nella cache del browser. Ho un forum molto piccolo con circa 20 utenti, quindi non credo che questa soluzione sia applicabile a forum con più utenti :wink:

Saluti, Ronny

Grazie, Ronny, e oh no! Non credo che i miei 10.000 utenti saranno molto contenti di perdere la cronologia delle letture. Ho anche ricevuto segnalazioni da molti utenti secondo cui i loro post non vengono contrassegnati come letti correttamente nelle ultime settimane. Immagino che questo spieghi anche quello.

C’è qualche modo di sistemare la situazione senza cancellare la tabella, @sam o altri? :slight_smile:

Questo bug risolto probabilmente spiega gli stati non letti:

Ho appena provato a riprodurre questo errore nel mio ambiente locale. Sono riuscito a spostare un post in un nuovo argomento e poi a riportarlo indietro.

Non riesco a capire se il commit menzionato qui sia la causa dell’errore. Non modifica la tabella post_timings ed è parte di una funzionalità sperimentale su cui stiamo lavorando (disabilitata per impostazione predefinita). Per sicurezza, ho provato a spostare dei post con la funzionalità abilitata, ma anche in quel caso ha funzionato correttamente.

Se qualcuno potesse condividere alcuni log, sarebbe davvero utile.

Controllo se ho i vecchi log relativi all’errore della tabella dati. Tuttavia, l’eliminazione del contenuto della tabella ha sicuramente risolto il problema (con gli effetti collaterali che ho menzionato)

Scusa, l’ho cercato, ma non riesco più a trovarlo… :confused:

Per quel che vale, sto riscontrando anche io questo errore 500 quando provo a spostare un determinato post da un thread a un altro. Non ho tentato nulla di particolare, quindi se qualcuno di Discourse ha bisogno dei log, fammi sapere cosa cercare e cercherò di recuperarli.

Grazie, ci proverò quando sarà disponibile la prossima beta.