Re: Getting fancy errors when accessing information_schema on 10.5

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





Am 30.10.2018 um 13:58 schrieb Tom Lane <tgl@xxxxxxxxxxxxx>:

Axel Rau <Axel.Rau@xxxxxxxxx> writes:
Am 30.10.2018 um 13:17 schrieb Tom Lane <tgl@xxxxxxxxxxxxx>:
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.  Have you perhaps messed with the cost attributed to
pg_has_role(), has_sequence_privilege(), or chareq()?

Not by intention. The instance has some history, it go back to 8.x I think.

You could investigate with, eg,

select oid::regprocedure, procost from pg_proc
where proname = 'has_sequence_privilege';

nextcloud=> select oid::regprocedure, procost from pg_proc
nextcloud->  where proname = 'has_sequence_privilege';
                 oid                   | procost
----------------------------------------+---------
has_sequence_privilege(name,text,text) |       1
has_sequence_privilege(name,oid,text)  |       1
has_sequence_privilege(oid,text,text)  |       1
has_sequence_privilege(oid,oid,text)   |       1
has_sequence_privilege(text,text)      |       1
has_sequence_privilege(oid,text)       |       1
(6 rows)

Hm, nothing surprising there, but what about the other two?

nextcloud=> select oid::regprocedure, procost from pg_proc
 where proname = 'pg_has_role';
             oid             | procost 
-----------------------------+---------
 pg_has_role(name,name,text) |       1
 pg_has_role(name,oid,text)  |       1
 pg_has_role(oid,name,text)  |       1
 pg_has_role(oid,oid,text)   |       1
 pg_has_role(name,text)      |       1
 pg_has_role(oid,text)       |       1
(6 rows)

nextcloud=> select oid::regprocedure, procost from pg_proc
 where proname = 'chareq';
          oid          | procost 
-----------------------+---------
 chareq("char","char") |       1
(1 row)

nextcloud=>

Axel
---
PGP-Key:29E99DD6  ☀  computing @ chaos claudius


[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux