autovacuum, reloptions, and hardcoded pg_class tupdesc

Поиск
Список
Период
Сортировка
От Alvaro Herrera
Тема autovacuum, reloptions, and hardcoded pg_class tupdesc
Дата
Msg-id 20090122211854.GL4296@alvh.no-ip.org
обсуждение исходный текст
Ответы Re: autovacuum, reloptions, and hardcoded pg_class tupdesc  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-hackers
Hi,

So I've been progressing on revising the autovacuum patch to make it
work with the current reloptions.  We have a number of options:

1. Call heap_open() for every relation that we're going to check, and  examine the reloptions via the relcache.  I'm
notsure that I like this very much.  Right now we just plow  ahead using a pg_class seqscan, which avoids locking the
relations just for the sake of verifying whether they need work.  However, this  is the cleanest option in terms of
modularitybreakage. 
 
2. Play some dirty tricks in autovacuum and extract the reloptions from  the bare pg_class tuple ourselves.  I think
doingthis cleanly  requires exporting some internal functions like  GetPgClassDescriptor() from relcache.c.
 

3. Disallow setting reloptions for pg_class, which (I think) allows us  to avoid having to use GetPgClassDescriptor,
butthe rest of it is  still a dirty hack.
 

In particular, if we do either (2) or (3), we'll need to keep an eye on
that code whenever we modify RelationParseRelOptions.

Thoughts?

-- 
Alvaro Herrera                                http://www.CommandPrompt.com/
The PostgreSQL Company - Command Prompt, Inc.


В списке pgsql-hackers по дате отправления:

Предыдущее
От: Stephen Frost
Дата:
Сообщение: Re: Column-Level Privileges
Следующее
От: Simon Riggs
Дата:
Сообщение: Re: rmgr hooks (v2)