Re: Re: [SQL] Re: pg_dump potential bug -UNIQUE INDEX on PG_SHADOW Dont!! HELP
От | Tom Lane |
---|---|
Тема | Re: Re: [SQL] Re: pg_dump potential bug -UNIQUE INDEX on PG_SHADOW Dont!! HELP |
Дата | |
Msg-id | 28038.986084099@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | Re: [SQL] Re: pg_dump potential bug -UNIQUE INDEX on PG_SHADOW Dont!! HELP (Bruce Momjian <pgman@candle.pha.pa.us>) |
Список | pgsql-hackers |
Bruce Momjian <pgman@candle.pha.pa.us> writes: > test=> CREATE UNIQUE INDEX shadow_index ON pg_shadow (usename); > CREATE > test=> select * from pg_shadow; > ERROR: Index 'pg_shadow_sysid_index' does not exist > test=> \q > $ psql test > psql: FATAL 1: Index 'pg_shadow_name_index' does not exist > $ > Notice the user wanted an index named shadow_index, but the error > mentioned is pg_shadow_name_index. What's failing is catcache lookups on pg_shadow. The catcache has table entries that claim that there are indexes on pg_shadow(usename) and pg_shadow(usesysid). The system would not work at all, except that catcache's use of these indexes is defeated by sanity-check code that notices that relhasindex is FALSE for pg_shadow (line 880 of catcache.c). As soon as you create an index on pg_shadow, relhasindex becomes TRUE and catcache.c starts trying to use these nonexistent indexes for routine operations like ACL permissions checks. So, nothing works anymore. We ought to create those indexes someday ;-) regards, tom lane
В списке pgsql-hackers по дате отправления: