Re: FailedAssertion("!OidIsValid(def->collOid)", File: "view.c", Line: 89)

From: Thomas Munro <thomas(dot)munro(at)gmail(dot)com>
To: Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>
Cc: Manuel Rigger <rigger(dot)manuel(at)gmail(dot)com>, PostgreSQL mailing lists <pgsql-bugs(at)lists(dot)postgresql(dot)org>
Subject: Re: FailedAssertion("!OidIsValid(def->collOid)", File: "view.c", Line: 89)
Date: 2020-06-02 22:50:07
Message-ID: CA+hUKGKrs_9Y-+3mYFHnABwPGaWPJLHKWwS2TU0f-NXSc-yjKg@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

On Wed, Jun 3, 2020 at 9:30 AM Alvaro Herrera <alvherre(at)2ndquadrant(dot)com> wrote:
> On 2019-Dec-02, Thomas Munro wrote:
> > On Mon, Dec 2, 2019 at 12:32 PM Manuel Rigger <rigger(dot)manuel(at)gmail(dot)com> wrote:
> > > CREATE TABLE t0(c0 TEXT COLLATE "POSIX");
> > > CREATE VIEW v0(c0) AS (SELECT (t0.c0 COLLATE "C")::INT FROM t0); --
> > > FailedAssertion("!OidIsValid(def->collOid)", File: "view.c", Line: 89)
> > >
> > > When building without assertions, the CREATE VIEW statement results in
> > > an error instead:
> > >
> > > ERROR: collations are not supported by type integer
> >
> > I think the options are to add a check and ereport() instead of an
> > assertion, or just remove the assertion and let BuildDescForRelation()
> > report the error as it does in non-assert builds. I think the latter
> > is better, since it seems well established that BuildDescForRelation()
> > will complain about that via its call to GetColumnDefCollation().
> > Here's a patch to do that.
>
> This has not been applied yet AFAICS. Thomas, are you getting to this
> one soon?

Thanks for the reminder. Will do.

In response to

Browse pgsql-bugs by date

  From Date Subject
Next Message Tom Lane 2020-06-02 22:53:48 Re: Explicit deterministic COLLATE fails with pattern matching operations on column with non-deterministic collation
Previous Message PG Bug reporting form 2020-06-02 22:09:20 BUG #16475: mess up my laptop