Re: AW: update on TOAST status'

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

In response to

Browse pgsql-hackers by date

  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