Falsche Versionsnummer im Backup?

Ich habe eine Site mit der Version 2.5.0.beta2 ( c4bc734b11 ) laufen. Aus . . . Gründen . . . muss ich sie und ihre Plugins auf eine bestimmte Version fixieren.

Ich habe auf einer Staging-Site einen neuen Container erstellt, bei dem Discourse auf einen bestimmten Commit fixiert ist und jedes Plugin per reset --hard auf denselben Commit zurückgesetzt wurde, auf dem die aktuelle Produktions-Site läuft. Jetzt möchte ich ein Backup wiederherstellen, um sicherzustellen, dass dies tatsächlich das bewirkt hat, was ich erwartet habe.

Der Dateiname des Backups lautet community-2020-06-10-163052-v20201303000002.sql.gz.

Die Wiederherstellung schlägt jedoch fehl mit:

Validating metadata...
  Current version: 20200320193612
  Restored version: 20201303000002

oder, zur besseren Lesbarkeit:

Validating metadata...
  Current version: 2020 03-20-19:36:12
  Restored version: 2020 13-03-00:00:02

Ich erinnere mich vage, dass es ein Problem mit Backups gab, die eine falsche Versionsnummer enthielten, aber ich kann es nicht finden.

Ich vermute, ich muss den Dateinamen einfach in community-2020-06-10-163052-v20200303000002.sql.gz umbenennen, anstatt in community-2020-06-10-163052-v20201303000002.sql.gz?

EDIT: Das Umbenennen der Backup-Datei hat funktioniert, zumindest für das rein Datenbank-basierte Backup. . .

EDIT 2: Anschließend konnte ich auch ein umbenanntes Vollbackup wiederherstellen.

Kannst du prüfen, ob ein Plugin eine Datenbank-Migration mit “20201303000002” im Dateinamen hat?

Verdammt. Ich sehe weder einen solchen Dateinamen noch diesen String in irgendwelchen Plugins. Und es klang wie eine so gute Erklärung!

Eine Google-Suche nach dieser Zeichenkette führt zu diesem Thema und zu folgendem Link: https://review.discourse.org/t/fix-ensures-migration-order-is-correct-27/10484

Das erklärt ziemlich genau, was passiert ist :slight_smile: