Problém je v tom, že výpis používá funkci pg_catalog.lowrite(integer, bytea)
vytvořit velký objekt a výchozí syntaxi how bytea
literály jsou zastoupeny v PostgreSQL se změnil s verzí 9.0.
Je tam parametr bytea_output
který lze nastavit na escape
pro výstup bytea
ve starém formátu s pozdějšími verzemi PostgreSQL. Bohužel, pg_dump
nerespektuje tento parametr při vytváření výpisů, vždy používá „nový“ hex
formát.
Výsledkem je, že výpis obsahující velké objekty z PostgreSQL verze 9.0 nebo novější nelze obnovit do databáze starší než 9.0.
Tyto velké objekty budete muset přenést nějakým jiným způsobem, pravděpodobně napsáním migračního programu.
Můžete navrhnout (v mailing listu pgsql-hackers) možnost pg_dump
který umožňuje nastavit bytea_escape
pro výpis, ale můžete se setkat s odporem, protože obnovení výpisu z novější verze PostgreSQL na starší není podporováno.