BUG #14220: pg_get_expr() with an incorrect relation id crashes the server

From: christopher(dot)m(dot)hanks(at)gmail(dot)com
To: pgsql-bugs(at)postgresql(dot)org
Subject: BUG #14220: pg_get_expr() with an incorrect relation id crashes the server
Date: 2016-06-29 22:43:49
Message-ID: 20160629224349.1407.32667@wrigleys.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

The following bug has been logged on the website:

Bug reference: 14220
Logged by: Chris Hanks
Email address: christopher(dot)m(dot)hanks(at)gmail(dot)com
PostgreSQL version: 9.5.3
Operating system: Linux Mint 17.2 64-bit
Description:

SELECT version():
"PostgreSQL 9.5.3 on x86_64-pc-linux-gnu, compiled by gcc (Ubuntu
4.8.2-19ubuntu1) 4.8.2, 64-bit"

Reproduction:

CREATE TABLE "test_table" ("id" serial PRIMARY KEY, "column_1" int4 NOT
NULL, "column_2" int4);

CREATE INDEX "idx" ON "test_table" ("column_1") WHERE ("column_2" = 4);

SELECT pg_get_expr(i.indpred, i.indexrelid) FROM pg_index i;

I realize that the query is incorrect, in order to retrieve the filter
expression as SQL I need to call pg_get_expr(i.indpred, i.indrelid). But it
seems like it should raise an error, rather than causing the server to
crash.

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Phil McGuinness 2016-06-30 11:30:57 PostGres 9.5 [ and earlier ] "SET SEARCH_PATH TO "+ cSchema + ";"
Previous Message Tom Lane 2016-06-29 20:03:22 Re: BUG #14219: rules vs. FK optimization: ERROR: no relation entry for relid 2