Re: Toast issues with OldestXmin going backwards

Поиск
Список
Период
Сортировка
От Stephen Frost
Тема Re: Toast issues with OldestXmin going backwards
Дата
Msg-id 20180428133021.GN27724@tamriel.snowman.net
обсуждение исходный текст
Ответ на Re: Toast issues with OldestXmin going backwards  (Robert Haas <robertmhaas@gmail.com>)
Ответы Re: Toast issues with OldestXmin going backwards  (Andrew Gierth <andrew@tao11.riddles.org.uk>)
Список pgsql-hackers
Greetings,

* Robert Haas (robertmhaas@gmail.com) wrote:
> On Fri, Apr 27, 2018 at 11:35 AM, Andrew Gierth
> <andrew@tao11.riddles.org.uk> wrote:
> >>>>>> "Robert" == Robert Haas <robertmhaas@gmail.com> writes:
> >  Robert> One idea that occurred to me is to somehow record -- I guess in
> >  Robert> pg_class using non-transactional updates -- the last cutoff XID
> >  Robert> used to vacuum any given table. Then we could just make a rule
> >  Robert> that you can't vacuum the TOAST table with an XID that's newer
> >  Robert> than the last one used for the main table. That would preserve
> >  Robert> the property that you can vacuum the tables separately while
> >  Robert> avoiding dangling pointers. But that's obviously not
> >  Robert> back-patchable,
> >
> > The suggestion made previously (in a historical thread) was to use an
> > entry in the reloptions field for this, at least in back branches. It
> > would be necessary for vacuum to add the entry initially in a normal
> > transactional update, after which it could be updated inplace.
>
> Yeah, I suppose.  Sounds pretty rickety to me, though.  Maybe I'm just
> a pessimist.

I tend to agree..  However, this isn't something that's been happening a
lot, from what I gather, and if we actually add a proper column into
pg_class for future versions (not really sure how I feel about if that
means "v11" or "v12" right now...) and reloptions for back-branches then
perhaps it's not so bad.

As far as a metadata page, it'd be pretty overkill, but maybe a fork for
it..?  I'm trying to think if there might be anything else we'd be able
to put into such a fork since adding another inode to every relation
that'll only ever likely be 8k definitely wouldn't win us any fans.  Not
sure, just brainstorming.

Thanks!

Stephen

Вложения

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

Предыдущее
От: Craig Ringer
Дата:
Сообщение: Re: Is a modern build system acceptable for older platforms
Следующее
От: Stephen Frost
Дата:
Сообщение: Re: "could not reattach to shared memory" on buildfarm member dory