Re: BUG #6643: [PostgreSQL9.2beta1] COPY after changing fillfactor gets a PANIC.
От | Tomonari Katsumata |
---|---|
Тема | Re: BUG #6643: [PostgreSQL9.2beta1] COPY after changing fillfactor gets a PANIC. |
Дата | |
Msg-id | 4FB39110.6070504@po.ntts.co.jp обсуждение исходный текст |
Ответ на | Re: BUG #6643: [PostgreSQL9.2beta1] COPY after changing fillfactor gets a PANIC. (Heikki Linnakangas <heikki.linnakangas@enterprisedb.com>) |
Список | 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!
В списке pgsql-bugs по дате отправления: