Re: Re: [COMMITTERS] pgsql: Write a WAL record whenever we perform an operation without

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: Re: [COMMITTERS] pgsql: Write a WAL record whenever we perform an operation without
Дата
Msg-id 20935.1265040830@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Re: Re: [COMMITTERS] pgsql: Write a WAL record whenever we perform an operation without  (Fujii Masao <masao.fujii@gmail.com>)
Список pgsql-hackers
Fujii Masao <masao.fujii@gmail.com> writes:
> On Mon, Feb 1, 2010 at 7:27 PM, Heikki Linnakangas
> <heikki.linnakangas@enterprisedb.com> wrote:
>> Fujii Masao wrote:
>>> The cause of the problem seems to be the new heap created by
>>> rebuild_relation() and copy_heap_data(), i.e., new VACUUM FULL.
>>> Since it's not a temporary heap, its rd_istemp is off. OTOH
>>> it needs to be synced after physical copy from old heap.
>> 
>> Why does it need to be synced?
>> 
>> ISTM the bug is that rd_istemp is off at that point.

> Umm... ISTM that new heap needs to be synced before calling
> swap_relation_files(), but, in the now, I'm not sure whether
> it's really required or not. Sorry.

If the original table is temp, then none of this work needs to be
fsync'd.  Ever.  So ISTM that CLUSTER ought to be copying the istemp
bit.  Another reason to do that is to make sure that the new instance
of the table goes into the temp tablespace and not the regular one.
        regards, tom lane


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

Предыдущее
От: Simon Riggs
Дата:
Сообщение: Re: Hot Standby and deadlock detection
Следующее
От: Tom Lane
Дата:
Сообщение: Re: Allow parentheses around the query expression that follows a WITH clause