On Thu, Nov 28, 2013 at 10:10 AM, Alvaro Herrera
<alvherre@2ndquadrant.com> wrote:
> Robert Haas escribió:
>> On Wed, Nov 6, 2013 at 9:40 AM, Alvaro Herrera <alvherre@2ndquadrant.com> wrote:
>> > Noah Misch wrote:
>> >> Incomplete list:
>> >>
>> >> - If smgrDoPendingDeletes() finds files to delete, mdunlink() and its callee
>> >> relpathbackend() call palloc(); this is true in all supported branches. In
>> >> 9.3, due to commit 279628a0, smgrDoPendingDeletes() itself calls palloc().
>> >> (In fact, it does so even when the pending list is empty -- this is the only
>> >> palloc() during a trivial transaction commit.) palloc() failure there
>> >> yields a PANIC during commit.
>> >
>> > I think we should fix this routine to avoid the palloc when not necessary.
>> > That initial palloc is pointless.
>
> Here's a trivial patch we could apply to 9.3 immediately. Anything else
> such as the ideas proposed below would require more effort than anyone
> can probably spend here soon.
Yeah, this seems like a good thing to do for now.
--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company