Wir sehen auch 500-Fehler beim Verschieben von Beiträgen. Ich konnte den Fehler auslösen, indem ich einen Beitrag in ein anderes Thema verschoben und dann versucht habe, ihn zurück in das ursprüngliche Thema zu verschieben.
Hier sind die Details:
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)
In der Zwischenzeit habe ich das Problem in der Tabelle post_timings in der Datenbank gefunden. In dieser Tabelle wird gespeichert, welche Beiträge die Benutzer bereits in den Threads gelesen haben. Unter (für mich) unbekannten Umständen kann es vorkommen, dass der Server versucht, Einträge in die Tabelle zu schreiben, die bereits existieren.
Ich habe in den Logs gesucht und einen Hinweis auf diese Datenbanktabelle gefunden. Leider weiß ich nicht mehr, welche Logs ich durchsucht habe…
Die Lösung für mich war einfach, den Inhalt der Tabelle zu löschen. Alle Benutzer haben ihren Lesefortschritt in den Threads verloren, und einige mussten einen neuen Beitrag in bestehenden Threads verfassen, nur um im Browser zwischengespeicherte Inhalte zu überschreiben. Ich habe ein sehr kleines Forum mit nur ca. 20 Nutzern; ich denke nicht, dass dies für ein Forum mit mehr Nutzern anwendbar ist
Danke, Ronny, und oh je! Ich glaube nicht, dass meine 10.000 Nutzer sehr glücklich darüber sein werden, ihre Lesehistorie zu verlieren. Außerdem habe ich in den letzten Wochen von vielen Nutzern Berichte erhalten, dass ihre Beiträge nicht ordnungsgemäß als gelesen markiert werden. Das erklärt das wohl auch.
Gibt es eine Möglichkeit, das aufzuräumen, ohne die Tabelle zu löschen, @sam oder andere?
Ich habe gerade versucht, diesen Fehler in meiner lokalen Umgebung nachzustellen. Ich konnte einen Beitrag in ein neues Thema verschieben und dann wieder zurück.
Ich kann nicht sagen, ob der hier erwähnte Commit den Fehler verursacht. Er ändert nicht die Tabelle post_timings und ist Teil einer experimentellen Funktion, an der wir arbeiten (standardmäßig deaktiviert). Nur zur Sicherheit habe ich versucht, Beiträge zu verschieben, während die Funktion aktiviert war, aber auch das funktionierte einwandfrei.
Wenn jemand einige Logs teilen könnte, wäre das wirklich hilfreich.
Ich schaue nach, ob ich meine alten Logs zum DataTable-Fehler habe. Aber das Löschen des Tabelleninhalts hat das Problem definitiv behoben (mit den Nebenwirkungen, die ich erwähnt habe).
Nur zur Info: Ich bekomme ebenfalls diesen 500er-Fehler, wenn ich versuche, einen bestimmten Beitrag von einem Thread in einen anderen zu verschieben. Ich habe nichts Kompliziertes ausprobiert. Falls jemand von Discourse Logdateien benötigt, sag mir bitte, wonach ich suchen soll, und ich schaue, ob ich das hinbekomme.