Re: BUG #15105: OpenTransientFile() should be paired with CloseTransientFile() rather than close() - Mailing list pgsql-bugs

From Tom Lane
Subject Re: BUG #15105: OpenTransientFile() should be paired with CloseTransientFile() rather than close()
Date
Msg-id 19686.1520607468@sss.pgh.pa.us
Whole thread Raw
In response to Re: BUG #15105: OpenTransientFile() should be paired withCloseTransientFile() rather than close()  (Michael Paquier <michael@paquier.xyz>)
Responses Re: BUG #15105: OpenTransientFile() should be paired with CloseTransientFile() rather than close()  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-bugs
Michael Paquier <michael@paquier.xyz> writes:
> On Fri, Mar 09, 2018 at 03:29:25AM +0000, PG Bug reporting form wrote:
>> Details: The handler opened with OpenTransientFile() should be closed with
>> CloseTransientFile(). However, in function dsm_impl_mmap(), on a certain
>> path, the return value of OpenTransientFile() (at line 885) is passed to
>> close() (at line 926). It is better to use CloseTransientFile() here, as
>> done at line 909.

> Good catch!  This is visibly a copy-paste error coming from
> dsm_impl_posix().  As a patch it gives the attached.  I am adding also
> Robert in CC for awareness.

Presumably, this would have been found sooner if AtEOXact_Files acted
like most other end-of-xact cleanup functions and whined about leaked
resources (in the commit case).  I wonder why it doesn't.

            regards, tom lane


pgsql-bugs by date:

Previous
From: Mehdi Rahman
Date:
Subject: Re: BUG #15102: Performance problem when doing join, index are not used
Next
From: Michael Meskes
Date:
Subject: Re: BUG #15104: Double free in the main function in ecpg.c