From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Jan Wieck <JanWieck(at)Yahoo(dot)com> |
Cc: | PostgreSQL HACKERS <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: AW: update on TOAST status' |
Date: | 2000-07-12 20:01:24 |
Message-ID: | 24686.963432084@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
JanWieck(at)t-online(dot)de (Jan Wieck) writes:
> So the only way left is recreating the indices from scratch
> and moving the new ones into place.
> But in contrast to things like column dropping, this would
> have to happen on every vacuum run for alot of tables.
> Isn't it appropriate to have a specialized version of it for
> this case instead of waiting for a general relation
> versioning?
I don't see a "specialized" way that would be any different in
performance from a "generalized" solution. The hard part AFAICT is how
does a newly-started backend discover the current version numbers for
the critical system tables and indexes. To do versioning of system
indexes at all, we need a full-fledged solution.
But as you pointed out before, none of the system indexes are on
toastable datatypes. (I just checked --- the only index opclasses used
in template1 are: int2_ops int4_ops oid_ops char_ops oidvector_ops
name_ops.) Maybe we could have an interim solution using the old method
for system indexes and a drop-and-rebuild approach for user indexes.
A crash partway through rebuild would leave you with a busted index,
but maybe WAL could take care of redoing the index build after restart.
(Of course, if the index build failure is reproducible, you're in
big trouble...)
I don't *like* that approach a whole lot; it's ugly and doesn't sound
all that reliable. But if we don't want to deal with relation
versioning for 7.1, maybe it's the only way for now.
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Ned Lilly | 2000-07-12 20:02:24 | Re: Slashdot discussion |
Previous Message | Jan Wieck | 2000-07-12 19:42:24 | Re: Slashdot discussion |