Re: Odd PL/PgSQL Error -- relation "X" does not exist when using index expression

From: Michael Fuhr <mike(at)fuhr(dot)org>
To: Greg Wittel <gwittel(at)proofpoint(dot)com>
Cc: pgsql-sql(at)postgresql(dot)org
Subject: Re: Odd PL/PgSQL Error -- relation "X" does not exist when using index expression
Date: 2007-02-08 11:23:31
Message-ID: 20070208112331.GA75899@winnie.fuhr.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

On Wed, Feb 07, 2007 at 02:43:13PM -0800, Greg Wittel wrote:
> I'm having a strange problem with a PL/PGSQL query that executes some
> dynamic SQL code. The code basically creates a dynamically named table,
> some indexes, etc.
>
> The problem seems to be the an index expression. If I remove it and do a
> plain index on the column, all works correctly. If I keep it, I get a
> "relation does not exist" error.

The error appears to happen for anything that uses SPI. A C function
that executes the following fails with the same error:

SPI_exec("CREATE TABLE foo (t text); CREATE INDEX foo_idx ON foo (lower(t))", 0);

In 8.2.3 the error location is:

LOCATION: RangeVarGetRelid, namespace.c:200

--
Michael Fuhr

In response to

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message oliverp21 2007-02-08 13:30:27 unsubscribe
Previous Message Aarni Ruuhimäki 2007-02-08 11:17:57 Re: interval as hours or minutes ?