Re: Block at a time ...

Поиск
Список
Период
Сортировка
От Dave Crooke
Тема Re: Block at a time ...
Дата
Msg-id ca24673e1003170816r4690672xc83252fa3f71b23d@mail.gmail.com
обсуждение исходный текст
Ответ на Re: Block at a time ...  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-performance
Greg - with Oracle, I always do fixed 2GB dbf's for poartability, and preallocate the whole file in advance. However, the situation is a bit different in that Oracle will put blocks from multiple tables and indexes in a DBF if you don't tell it differently.

Tom - I'm not sure what Oracle does, but it literally writes the whole extent before using it .... I think they are just doing the literal equivalent of dd if=/dev/zero ... it takes several seconds to prep a 2GB file on decent storage.

Cheers
Dave

On Wed, Mar 17, 2010 at 9:27 AM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
Greg Stark <gsstark@mit.edu> writes:
> I think we need posix_fallocate().

The problem with posix_fallocate (other than questionable portability)
is that it doesn't appear to guarantee anything at all about what is in
the space it allocates.  Worst case, we might find valid-looking
Postgres data there (eg, because a block was recycled from some recently
dropped table).  If we have to write something anyway to zero the space,
what's the point?

                       regards, tom lane

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

Предыдущее
От: VJK
Дата:
Сообщение: Fwd: shared_buffers advice
Следующее
От: Craig James
Дата:
Сообщение: Re: Block at a time ...