Re: order of nested loop

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: order of nested loop
Дата
Msg-id 19338.1055914922@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Re: order of nested loop  ("Jim C. Nasby" <jim@nasby.net>)
Ответы Re: order of nested loop  ("Jim C. Nasby" <jim@nasby.net>)
Список pgsql-general
"Jim C. Nasby" <jim@nasby.net> writes:
> ... I'm sure there's plenty of other ways MVCC info could be
> stored without using 16/20 bytes per tuple.

I didn't really see a single workable idea there.  Keep in mind that
storage space is only one consideration (and not a real big one given
modern disk-drive sizes).  Ask yourself about atomicity, failure
recovery, and update costs.  RLE encoding of tuple states?  Get real ---
how many rows could get wiped out by a one-bit lossage?  How extensive
are the on-disk changes needed to encode a one-tuple change in state,
and how do you recover if the machine crashes when only some of those
changes are down to disk?  In my opinion PG's on-disk structures are
barely reliable enough now; we don't want to introduce compression
schemes with the potential for large cross-tuple failure modes.

Storing commit state in index entries has been repeatedly proposed
and repeatedly rejected, too.  It converts an atomic operation
(update one word in one page) into a non-atomic, multi-page operation,
which creates lots of performance and reliability problems.  And the
point of an index is to be smaller than the main table --- the more
stuff you cram into an index tuple header, the less the advantage
of having the index.

Criticism in the form of a patch with experimental evidence is welcome,
but I'm not really interested in debating what-if proposals, especially
not ones that are already discussed in the archives.

            regards, tom lane

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

Предыдущее
От: "Jim C. Nasby"
Дата:
Сообщение: Re: order of nested loop
Следующее
От: Hubert Fröhlich
Дата:
Сообщение: PostgreSQL alternative to "Oracle Real Application Cluster"