Re: Shave a few instructions from child-process startup sequence - Mailing list pgsql-hackers

From Amit Kapila
Subject Re: Shave a few instructions from child-process startup sequence
Date
Msg-id CAA4eK1J3jvWvVrHgNhBdL8OrGsgoecL3k78RPdmc4TfqYi18aA@mail.gmail.com
Whole thread Raw
In response to Re: Shave a few instructions from child-process startup sequence  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: Shave a few instructions from child-process startup sequence
List pgsql-hackers
On Fri, Nov 1, 2013 at 9:50 AM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> Amit Kapila <amit.kapila16@gmail.com> writes:
>> On Thu, Oct 31, 2013 at 2:41 AM, Gurjeet Singh <gurjeet@singh.im> wrote:
>>> Just a small patch; hopefully useful.
>
>> This is valid saving as we are filling array ListenSocket[] in
>> StreamServerPort() serially, so during ClosePostmasterPorts() once if
>> it encountered PGINVALID_SOCKET, it is valid to break the loop.
>> Although savings are small considering this doesn't occur in any
>> performance path, still I think this is right thing to do in code.
>
>> It is better to register this patch in CF app list, unless someone
>> feels this is not right.
>
> I think this is adding fragility for absolutely no meaningful savings.
> The existing code does not depend on the assumption that the array
> is filled consecutively and no entries are closed early.
  As I could see, it appears to me that code in ServerLoop and
initMasks is already dependent on it, if any socket is closed out of
order, it can break the logic in these API's. Do me and Gurjeet are
missing some point here?


With Regards,
Amit Kapila.
EnterpriseDB: http://www.enterprisedb.com



pgsql-hackers by date:

Previous
From: Stephen Frost
Date:
Subject: postgres_fdw & async queries
Next
From: Tom Lane
Date:
Subject: Re: Shave a few instructions from child-process startup sequence