From: | Eric Malm <emalm(at)pivotal(dot)io> |
---|---|
To: | pgsql-bugs(at)postgresql(dot)org |
Cc: | cf-runtime-eng <cf-runtime-eng(at)pivotal(dot)io>, Luan Santos <lsantos(at)pivotal(dot)io> |
Subject: | Error with citext extension when upgrading from 9.0.3 to 9.3.5: 'cannot cast type oid[] to oidvector' |
Date: | 2014-08-26 23:53:32 |
Message-ID: | CACVur1aYPSXZnSXd3LcQTDaoki3P5u2X4AWd1+iiGVObBd9ekA@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs |
Dear PostgreSQL developers,
We've encountered some errors when upgrading a database using the citext
extension from 9.0.3 to 9.3.5. Specifically, we run pg_upgrade, then
attempt to run 'CREATE EXTENSION citext FROM UNPACKAGED' to resolve
collation errors on our citext columns. This produces the error message
'ERROR: cannot cast type oid[] to oidvector' when it runs the following
command from contrib/citext/citext--unpackaged--1.0.sql:
UPDATE pg_catalog.pg_index SET indcollation[0] = 100
WHERE indclass[0] IN (
WITH RECURSIVE typeoids(typoid) AS
( SELECT 'citext'::pg_catalog.regtype UNION
SELECT oid FROM pg_catalog.pg_type, typeoids
WHERE typelem = typoid OR typbasetype = typoid )
SELECT oid FROM pg_catalog.pg_opclass, typeoids
WHERE opcintype = typeoids.typoid
);
We think this may be related to commit 7b63528, which fixes array slicing
of int2vector and oidvector values. The full message on the commit states
that this forbids array-element updates on oidvector columns. Additionally,
we have successfully upgraded to 9.3.1, which is the latest version of 9.3
that does not include this commit.
Please let us know if there's additional information or assistance we can
provide to help resolve this.
Thanks very much,
Eric Malm and Luan Santos, for the Pivotal CF Runtime team
From | Date | Subject | |
---|---|---|---|
Next Message | qiao5034 | 2014-08-27 09:18:35 | BUG #11279: unnecessary subplan reduces performance |
Previous Message | Bruce Momjian | 2014-08-26 22:52:16 | Re: BUG #9136: pg_is_xlog_replay_paused() should not need Superuser |