Probleme bei der Wiederherstellung: „ungültiger Befehl \\restrict“

Ich habe Probleme bei der Wiederherstellung von „Discourse 3.5.0.beta9-dev - 04dbc622ab1e0197d16703ba47cf005ec93697ee“ auf die aktuelle Version (6f06709643fa5e2253606c46f79d089ca3393ac9)

[STARTED]
'system' hat die Wiederherstellung gestartet!
Wiederherstellung als laufend markieren...
Sicherstellen, dass /home/pfaffman/src/discourse-repos/discourse/tmp/restores/default/2025-10-28-201139 existiert...
Archiv in das tmp-Verzeichnis herunterladen...
Dump-Datei extrahieren...
Metadaten validieren...
  Aktuelle Version: 20251024020353
  Wiederhergestellte Version: 20250724012518
Schreibgeschützten Modus aktivieren...
Sidekiq pausieren...
Bis zu 60 Sekunden warten, bis Sidekiq die Ausführung von Jobs beendet hat...
Fehlende Funktionen im discourse_functions-Schema erstellen...
Dump-Datei wiederherstellen... (dies kann eine Weile dauern)
ungültiger Befehl \restrict
EXCEPTION: psql fehlgeschlagen: ungültiger Befehl \restrict

Wenn ich diese printf-Befehle aus dem Datenbank-Restorer entferne, funktioniert es:

      <<~CMD
        (
          printf '%s\\n' "\\\\\\\\restrict #{nonce}"
          #{sed_command}
          printf '%s\\n' "\\\\\\\\unrestrict #{nonce}"
        ) | #{self.class.psql_command} 2>&1
      CMD

Es sieht aus wie dieser Commit.

Auf der Version, auf der das Backup erstellt wurde (ein cdck Docker-Container), habe ich Folgendes:

PostgreSQL 15.13 (Debian 15.13-1.pgdg120+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 12.2.0-14) 12.2.0, 64-bit

und hier versuche ich die Wiederherstellung (Entwicklungsseite mit pg15 auf der Bare-Metal):
PostgreSQL 15.13 (Ubuntu 15.13-1.pgdg22.04+1) on x86_64-pc-linux-gnu, compiled by gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0, 64-bit

Ich verstehe nicht, was dieser Code zu tun versucht, daher bin ich verwirrt.

Sie müssen auf PG 15.14 sein und sicherstellen, dass alle Ihre Instanzen darauf laufen. Dies behebt ein großes Sicherheitsproblem.

3 „Gefällt mir“

Aha. Das ist eine sehr einfache Erklärung.

Danke. Ich werde mich darum kümmern.

2 „Gefällt mir“