Re: [HACKERS] crash on new system views - Mailing list pgsql-hackers

From Keith Parks
Subject Re: [HACKERS] crash on new system views
Date
Msg-id 199809151435.PAA15709@mtcc.demon.co.uk
Whole thread Raw
Responses Re: [HACKERS] crash on new system views  (Bruce Momjian <maillist@candle.pha.pa.us>)
List pgsql-hackers
Bruce Momjian <maillist@candle.pha.pa.us>

>
> This query crashes the backend.  pg_rules is a new system view:
>
>     BEGIN WORK;
>     DECLARE c_matches BINARY CURSOR FOR
>     SELECT  count(*)
>     FROM    pg_attrdef t1, pg_rules t2
>     WHERE   t1.adrelid = t2.oid
>     END WORK;
>
> Partial backtrace is below.  It is crashing in the optimizer.

Bruce,

I'm getting the same here when testing your query.

The odd (maybe not?) thing is that views appear to have
a NULL oid for all tuples.

postgres=> select oid,usename from pg_user;
oid|usename
---+--------
   |postgres
^^^

Thinking about it, a view would not actually have an OID for each
tuple as it's not a real table.

It also crashed without the BEGIN or DECLARE ...

postgres=> SELECT  count(*) FROM    pg_attrdef t1, pg_rules t2 WHERE
t1.adrelid = t2.oid;
pqReadData() -- backend closed the channel unexpectedly.

As usual I have no idea where to look for the problem!!

Keith.


pgsql-hackers by date:

Previous
From: Sferacarta Software
Date:
Subject: Re[2]: [HACKERS] SERIAL data type
Next
From: Bruce Momjian
Date:
Subject: Re: [HACKERS] crash on new system views