Re: [PROPOSAL] VACUUM Progress Checker.
От | Robert Haas |
---|---|
Тема | Re: [PROPOSAL] VACUUM Progress Checker. |
Дата | |
Msg-id | CA+TgmoawxGgsxjoj2BygUCNC1LF9kdxrHXMEDyCPNuBoLB1rSQ@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: [PROPOSAL] VACUUM Progress Checker. (Rahila Syed <rahilasyed90@gmail.com>) |
Ответы |
Re: [PROPOSAL] VACUUM Progress Checker.
Re: [PROPOSAL] VACUUM Progress Checker. |
Список | pgsql-hackers |
On Thu, Mar 24, 2016 at 8:45 AM, Rahila Syed <rahilasyed90@gmail.com> wrote: > Server crash was reported on running vacuum progress checker view on 32-bit > machine. > Please find attached a fix for the same. > > Crash was because 32 bit machine considers int8 as being passed by reference > while creating the tuple descriptor. At the time of filling the tuple store, > the code (heap_fill_tuple) checks this tuple descriptor before inserting the > value into the tuple store. It finds the attribute type pass by reference > and hence it treats the value as a pointer when it is not and thus it fails > at the time of memcpy. > > This happens because appropriate conversion function is not employed while > storing the value of that particular attribute into the values array before > copying it into tuple store. > > - values[i+3] = > UInt32GetDatum(beentry->st_progress_param[i]); > + values[i+3] = > Int64GetDatum(beentry->st_progress_param[i]); > > > Attached patch fixes this. Uggh, what a stupid mistake on my part. Committed. Thanks for the patch. -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company
В списке pgsql-hackers по дате отправления: