postgresqlupgradepg-upgrade

Syntax error near "=>" when running pg_upgrade 9.4 to 9.5


I am unable to upgrade my postgresql server from 9.4 to 9.5 due to the following error message:

pg_restore: creating OPERATOR "public.->"
pg_restore: creating OPERATOR "public.<@"
pg_restore: creating OPERATOR "public.=>"
pg_restore: [archiver (db)] Error while PROCESSING TOC:
pg_restore: [archiver (db)] Error from TOC entry 1617; 2617 17937 OPERATOR => william
pg_restore: [archiver (db)] could not execute query: ERROR:  syntax error at or near "=>"
LINE 1: CREATE OPERATOR => (
                        ^
    Command was: CREATE OPERATOR => (
    PROCEDURE = "tconvert",
    LEFTARG = "text",
    RIGHTARG = "text"
);

I have not been able to find anything relevant by googling. The most relevant thing I can find is someone who encountered this issue with a much older version of hstore, and the fix is not clear.

I am using homebrew on a Mac. I would work around the issue with pg_dumpall, but I can no longer run that because the 9.4 binaries are loading the libs for 9.5 following the upgrade. Is there a way around this?


Solution

  • The other solutions either were not options, or they didn't work.
    The solution that worked for me was:

    ALTER EXTENSION hstore UPDATE TO '1.1';
    

    Source: https://www.postgresql.org/message-id/22170.1457479307%40sss.pgh.pa.us