Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtp (Exim 4.80) (envelope-from ) id 1aCZw5-0007x8-55 for pgsql-hackers@arkaria.postgresql.org; Fri, 25 Dec 2015 21:30:05 +0000 Received: from localhost ([127.0.0.1] helo=postgresql.org) by malur.postgresql.org with smtp (Exim 4.84) (envelope-from ) id 1aCZw4-0001Oo-Nd for pgsql-hackers@arkaria.postgresql.org; Fri, 25 Dec 2015 21:30:04 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA384:256) (Exim 4.84) (envelope-from ) id 1aCZw3-0001Of-1Z for pgsql-hackers@postgresql.org; Fri, 25 Dec 2015 21:30:03 +0000 Received: from sss.pgh.pa.us ([66.207.139.130]) by magus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA384:256) (Exim 4.84) (envelope-from ) id 1aCZvz-0002Eu-Ut for pgsql-hackers@postgresql.org; Fri, 25 Dec 2015 21:30:02 +0000 Received: from sss1.sss.pgh.pa.us (localhost [127.0.0.1]) by sss.pgh.pa.us (8.14.4/8.14.4) with ESMTP id tBPLTrdw024834; Fri, 25 Dec 2015 16:29:53 -0500 From: Tom Lane To: Andres Freund cc: =?utf-8?B?0JLQsNGB0LjQu9GM0LXQsiDQlNC80LjRgtGA0LjQuQ==?= , pgsql-hackers@postgresql.org Subject: Re: Performance degradation in commit ac1d794 In-reply-to: <20151225211326.z4umuafvv27nczya@alap3.anarazel.de> References: <9F7A592C-323B-40CF-AEB6-20D28EAEFFDD@anarazel.de> <19322.1451067023@sss.pgh.pa.us> <19834.1451068135@sss.pgh.pa.us> <20151225211326.z4umuafvv27nczya@alap3.anarazel.de> Comments: In-reply-to Andres Freund message dated "Fri, 25 Dec 2015 22:13:26 +0100" Date: Fri, 25 Dec 2015 16:29:53 -0500 Message-ID: <24833.1451078993@sss.pgh.pa.us> X-Pg-Spam-Score: -1.9 (-) List-Archive: List-Help: List-ID: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: X-Mailing-List: pgsql-hackers Precedence: bulk Sender: pgsql-hackers-owner@postgresql.org Andres Freund writes: > There's a couple solutions I can think of to that problem: > 1) Use epoll()/kqueue, or other similar interfaces that don't require > re-registering fds at every invocation. My guess is that that'd be > desirable for performance anyway. Portability, on the other hand, would be problematic. > 2) Create a pair of fds between postmaster/backend for each > backend. While obviously increasing the the number of FDs noticeably, > it's interesting for other features as well: If we ever want to do FD > passing from postmaster to existing backends, we're going to need > that anyway. Maybe; it'd provide another limit on how many backends we could run. > 3) Replace the postmaster_alive_fds socketpair by some other signalling > mechanism. E.g. sending a procsignal to each backend, which sets the > latch and a special flag in the latch structure. And what would send the signal? The entire point here is to notice the situation where the postmaster has crashed. It can *not* depend on the postmaster taking some action. regards, tom lane -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers