From: Tom Lane <tgl@sss.pgh.pa.us>
To: shohorab hossain <shohorab23@gmail.com>
Cc: pgsql-bugs@lists.postgresql.org
Subject: Re: ERROR: commutator operator - is already the commutator of operator +
Date: Sun, 17 Nov 2024 11:05:35 -0500
Message-ID: <3057808.1731859535@sss.pgh.pa.us> (raw)
In-Reply-To: <CALBMUWWkDcVwAyba5gAN_D0cbmP7wQwtJ3615tkhwJyQw=DJkA@mail.gmail.com>
References: <CALBMUWWkDcVwAyba5gAN_D0cbmP7wQwtJ3615tkhwJyQw=DJkA@mail.gmail.com>
shohorab hossain <shohorab23@gmail.com> writes:
> Whenever I try to restore a dump database backup to PostgreSQL version
> 17.1, I receive the following error log. The dump is from PostgreSQL
> version 15.8.
> What is this error and how can I fix it?.
> pg_restore: error: could not execute query: ERROR: commutator operator - is
> already the commutator of operator +
v17 is complaining about a logically-inconsistent situation that
earlier versions did not notice. You have interval - numeric
claiming to be the commutator of numeric - interval, which seems
fine --- but according to this error message, numeric - interval
is claiming to be the commutator of interval + numeric. If these
operators have anything like the semantics their names suggest,
that commutator linkage is a bug in the operator's definition.
You need to get rid of it, or better adjust it to point to the
right operator, ie interval - numeric.
We don't have any syntax for adjusting the commutator link
once set, but maybe you could manually edit the dump file.
regards, tom lane
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-bugs@postgresql.org
Cc: tgl@sss.pgh.pa.us, shohorab23@gmail.com, pgsql-bugs@lists.postgresql.org
Subject: Re: ERROR: commutator operator - is already the commutator of operator +
In-Reply-To: <3057808.1731859535@sss.pgh.pa.us>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox