Pg_restore eines dumps mit OIDs in PostgreSQL V. 12

Hallo,
ich bin dabei, meine Anwendung auf PostgreSQL 12.3 umzustellen.
Mit der Version 12 werden Tabellen mit WITH (OIDs = TRUE) nicht mehr unterstützt.
Leider habe ich diese Option bisher bei mehreren Tabellen verwendet.
Von der gesamten Datenbank wurden bisher Backups mit pg_dump.exe unter der Verwendung der Option -o angelegt.
Diese dump-files kann ich nun nicht mehr wieder herstellen, da die Tabellen nicht mehr mit OIDs angelegt werden können, die Dumps aber als “With OIDs” markiert sind. Die Fehlermeldung sieht folgendermaßen aus.:
could not execute query: ERROR: table “audittrail_xxx” does not have OIDs
Command was: COPY “public”.“audittrail_xxx” (“batch_id”, … , “timestamp”, “comment”, “position”) WITH OIDS FROM stdin;

Gibt es eine Möglichkeit, die alten Daten mit der neuesten Version wieder herzustellen? Es ist in den meisten Fällen nicht möglich, die alten Daten vorher per pg_dump.exe ohne Option -o zu sichern. Vor allem unter dem Hintergrund, dass diese Files als Datenbackup Verwendung finden und diese auch in der neuesten Version wieder hergestellt werden sollen.

Vielen Dank für Eure Ratschläge

pg_dump hat keine Option -o

Du wirst nicht umhin kommen, via ALTER TABLE SET WITHOUT OIDS die OID-Eigenschaft zu entfernen. Hast Du die OID aktiv verwendet?

Btw. OID’s sind seit ca. 15 Jahren deprecated …

sorry, alte Versionen von pg_dump haben diese Option.

Die OIDs sind leider historisch gesehen schon lange in den Tabellen vorhanden, wurden bisher nie verwendet aber auch nicht entfernt.
Nun sind sie leider auch in alten Backups (Dumps) verewigt, die ich in der neuesten (Test-) Installation nicht mehr restored bekomme.
Die Tabellen wurden (bzw. mussten) in der 12.3 (Test-) Datenbank ohne OID angelegt und sollten mit den Dump Daten gefüllt werden. Dabei trat dann der Fehler auf.

Ich suche jetzt nur nach einer praktischen Möglichkeit, dass ich sicherstellen kann, alle alten Daten auch wieder herstellen zu können.
Danke für jeden Hinweis.

Nun ja, was soll man dazu sagen?

Wie gesagt, OID’s sind seit zig Versionen (und damit Jahren) deprecated. Wie lange wollt/müßt ihr in der Lage sein, alte Backupszu restoren? Was ja nach wie vor gehen wird: Restore in eine Version unter 12.

Was auch geht: den Dump editieren. Entweder manuell oder mit Tools wie sed, awk, perl, …

Das wird wohl die einzige Möglichkeit sein, das Problem zu lösen. Versuchsweise konnte ich da in einer Tabelle den Import der Daten hinbekommen.
Ich habe in der Struktur am Anfang eine Spalte vom Typ oid zugefügt und den COPY Befehl des Dumps entsprechend überarbeitet, damit ging es dann.
Später muss ich mich dann um die Daten in diesem Feld kümmern und sie “beseitigen”.

Vielen Dank für die Unterstützung!