Können Sie Chatnachrichten in großen Mengen erneut backen?

Ich gehe davon aus, dass Sie das können (wahrscheinlich ähnlich wie bei Beiträgen), bin mir aber nicht sicher, wie. Wir hatten einen Administrator, der versehentlich eine Datenbankbearbeitung an allen Chatnachrichten vorgenommen hat, als er versuchte, einige in einem Kanal zu bearbeiten, und jetzt müssen wir alle betroffenen Chatnachrichten neu backen (was leider alle Chatnachrichten in allen Kanälen, einschließlich DMs, zu sein scheint).

1 „Gefällt mir“

Es gibt einen

rake chat_messages:rebake_uncooked_chat_messages

Also müsste man etwas tun, um sie als “cooked” zu markieren.

1 „Gefällt mir“

Gibt es eine Möglichkeit, sie alle als “ungekocht” zu markieren? (~99% unserer Chatnachrichten müssen neu gebacken werden, daher ist es in Ordnung, sie einfach alle zu markieren)

2 „Gefällt mir“
Chat::Message.update_all(cooked_version: nil)

Ich glaube, das wird es tun, aber ich gebe keine Versprechungen, dass es Ihr Leben nicht ruinieren wird.

2 „Gefällt mir“

Heh, kann nicht so viel schlimmer sein als es jetzt schon ist.

Erstellen Sie zuerst eine Sicherung!

1 „Gefällt mir“

Hat das aus reiner Neugier funktioniert?

Soweit ich mich erinnere, haben wir Folgendes getan:

  1. Ausführen:
  1. Alle Nachrichten, die wir konnten, aus einem älteren Backup wiederherstellen
  2. Den Rest neu backen
3 „Gefällt mir“