Re: BUG #6643: [PostgreSQL9.2beta1] COPY after changing fillfactor gets a PANIC.

From: Tomonari Katsumata <katsumata(dot)tomonari(at)po(dot)ntts(dot)co(dot)jp>
To: Heikki Linnakangas <heikki(dot)linnakangas(at)enterprisedb(dot)com>
Cc: pgsql-bugs(at)postgresql(dot)org
Subject: Re: BUG #6643: [PostgreSQL9.2beta1] COPY after changing fillfactor gets a PANIC.
Date: 2012-05-16 11:35:44
Message-ID: 4FB39110.6070504@po.ntts.co.jp
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

Hi, Heikki

I'm sorry, forgotten attach files.

I've tryed to send mail with files,
but I could not...
(I think this is my mail server problem.)

Thank you very much for fixing it!

(2012/05/16 20:14), Heikki Linnakangas wrote:
> On 16.05.2012 13:47, Heikki Linnakangas wrote:
>> This sounds like a bug in the new page-at-a-time behavior in COPY. Can
>> you send me a self-contained test, including the test data?
>
> Never mind. After staring at the code for a while, I spotted the bug,
> and was able to reproduce with a simpler case. It's quite easy to
> reproduce when you set fillfactor even lower, like 10.
>
> The problem is with this line in heap_multi_insert function:
>
> if (PageGetHeapFreeSpace(page) - saveFreeSpace <
> MAXALIGN(heaptup->t_len))
>
> That doesn't work as intended, because the return value of
> PageGetHeapFreeSpace and saveFreeSpace are unsigned. When
> saveFreeSpace is larger than the amount of free space on the page, the
> left hand side of that comparison is supposed to go negative, but it
> wraps around to a highly positive number because it's unsigned.
>
> Fixed, thanks for the report!

In response to

Browse pgsql-bugs by date

  From Date Subject
Next Message Tom Lane 2012-05-16 13:08:26 Re: 9.2beta1 regression: pg_restore --data-only does not set sequence values any more
Previous Message Heikki Linnakangas 2012-05-16 11:14:49 Re: BUG #6643: [PostgreSQL9.2beta1] COPY after changing fillfactor gets a PANIC.