From: | Alex Hunsaker <badalex(at)gmail(dot)com> |
---|---|
To: | Robert Haas <robertmhaas(at)gmail(dot)com> |
Cc: | pgsql-hackers(at)postgresql(dot)org |
Subject: | Re: attoptions |
Date: | 2010-01-19 15:51:40 |
Message-ID: | 34d269d41001190751j4c4b6ccdl24a7b3f902e3f6a4@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Tue, Jan 19, 2010 at 07:49, Robert Haas <robertmhaas(at)gmail(dot)com> wrote:
>That will mean that users can't use ALTER TABLE ... ALTER
> COLUMN ... SET STATISTICS DISTINCT for system tables, but I don't
> think that's much of a loss, and it certainly seems cleaner than
> hoping that any additional attoptions we add in the future will be
> things that we don't mind having applied to system tables.
I assumed there was a good reason to apply them to system tables. But
I admit I did not follow the original SET STATISTICS DISTINCT patch. [
looks ] Oh ok seeing that you were the original patch author you
probably have a good idea about the above, so ill defer :)
> There's a further design issue here in that the reloptions code
> currently contemplates at most 31 types of objects. That makes sense
> if the object types are things like "table" or "GIN index", but it's
> not going to work if we get too fine-grained. The "right" way to make
> n_distinct apply to both table columns and index columns and
> n_distinct_inherited only to table columns is probably to define two
> different reloption kinds, but that's burning up our supply of
> available bits a little more quickly than I feel comfortable with. So
> I'm inclined to just let n_distinct_inherited be applied either place,
> and if you happen to apply it to an index column it just won't affect
> anything. We might want to refactor the reloptions API in the future
> to allow this to be handled better, but I don't think we need or want
> to do that for 8.5.
Agreed.
Although ISTM we might be able to extend it just using two bits:
RELOPT_KIND_SYSTEM
RELOPT_KIND_INHERIT
#define RELOPT_KIND_INDEX RELOPT_KIND_BTREE|RELOPT_KIND_GIST|...
Abuse ? Maybe. The hardest part I think would be setting those flags
appropriately.
But yes, lets keep it simple for now.
From | Date | Subject | |
---|---|---|---|
Next Message | Robert Haas | 2010-01-19 15:59:39 | Re: Git out of sync vs. CVS |
Previous Message | Magnus Hagander | 2010-01-19 15:44:11 | Re: Git out of sync vs. CVS |