Re: Getting fancy errors when accessing information_schema on 10.5

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Laurenz Albe <laurenz(dot)albe(at)cybertec(dot)at>
Cc: Axel Rau <Axel(dot)Rau(at)Chaos1(dot)DE>, pgsql-admin(at)postgresql(dot)org
Subject: Re: Getting fancy errors when accessing information_schema on 10.5
Date: 2018-10-30 13:45:34
Message-ID: 15908.1540907134@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-admin pgsql-hackers

Laurenz Albe <laurenz(dot)albe(at)cybertec(dot)at> writes:
> Tom Lane wrote:
>> It doesn't happen for me either. Looking at the planner code, it seems
>> like the relkind check should happen first because it'd be cheaper than
>> the OR condition.

> It is still unclear why the execution plan looks like that, but maybe
> it would be more robust to change "has_sequence_privilege" so that it
> just returns FALSE if the argument is not a sequence.

I was wondering about that, but somewhere along there we'd be losing
all semblance of error checking on the OID argument, so it's not all
that attractive a solution. I'd prefer to understand why this isn't
behaving the same as it does for other people before we resort to that.

Axel, would you try two more things on that DB?

explain select ((pg_has_role(relowner, 'USAGE'::text) OR has_sequence_privilege(oid, 'SELECT, UPDATE, USAGE'::text))) from pg_class;

explain select (relkind = 'S'::"char") from pg_class;

That's just to positively confirm that the planner thinks the former
expression is more expensive than the latter.

Assuming that it does, the only other answer I can think of is that
there's something wrong with the insertion sort code in
order_qual_clauses. Pretty hard to see what, though.

regards, tom lane

In response to

Responses

Browse pgsql-admin by date

  From Date Subject
Next Message Axel Rau 2018-10-30 14:35:39 Re: Getting fancy errors when accessing information_schema on 10.5
Previous Message Laurenz Albe 2018-10-30 13:18:12 Re: Getting fancy errors when accessing information_schema on 10.5

Browse pgsql-hackers by date

  From Date Subject
Next Message Michael Paquier 2018-10-30 13:48:55 Re: ToDo: show size of partitioned table
Previous Message Sergei Kornilov 2018-10-30 13:30:16 Re: Continue work on changes to recovery.conf API