Re: Further open item (Was: Status of 7.2)

Поиск
Список
Период
Сортировка
От Zeugswetter Andreas SB SD
Тема Re: Further open item (Was: Status of 7.2)
Дата
Msg-id 46C15C39FEB2C44BA555E356FBCD6FA41EB420@m0114.s-mxs.net
обсуждение исходный текст
Ответ на Further open item (Was: Status of 7.2)  ("Tille, Andreas" <TilleA@rki.de>)
Список pgsql-hackers
> >>The underlying problem the user is seeing is how to _know_ an index
> >>tuple is valid without checking the heap,
> >>
> I'd propose a memory-only (or heavily cached) structure of tuple death
transaction
> ids for all transactions since the oldest live trx. And when that
oldest finishes then
> the tombstone marks for all tuples deleted between that and the new
oldest are moved to 
> relevant indexes (or the index keys are deleted) by concurrent vacuum
> or similar process.

Andreas said, that his data is only loaded/changed in the night, thus
for his queries all tuples found in the index are actually live.
Every heap tuple lookup results in "tuple valid".

In his case a per table global "highest xid" in heapdata that can be
compared
against highest xid during last vacuum would probably be sufficient
(or a flag for "modified after last vacuum").
Of course per table globals are a major headache regarding concurrency,
but there would be other possible optimizations that could profit from
such 
a structure, like rowcount ...

Andreas


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

Предыдущее
От: Larry Rosenman
Дата:
Сообщение: Re: 7.2b2 "make check" failure on Red Hat Linux 7.2
Следующее
От: Tom Lane
Дата:
Сообщение: Re: Further open item (Was: Status of 7.2)