Received: from maia.hub.org (maia-5.hub.org [200.46.204.29]) by mail.postgresql.org (Postfix) with ESMTP id 05D6963241C for ; Sat, 10 Jul 2010 09:30:46 -0300 (ADT) Received: from mail.postgresql.org ([200.46.204.86]) by maia.hub.org (mx1.hub.org [200.46.204.29]) (amavisd-maia, port 10024) with ESMTP id 84240-05 for ; Sat, 10 Jul 2010 12:30:38 +0000 (UTC) X-Greylist: from auto-whitelisted by SQLgrey-1.7.6 Received: from moutng.kundenserver.de (moutng.kundenserver.de [212.227.17.8]) by mail.postgresql.org (Postfix) with ESMTP id 25E6C63229C for ; Sat, 10 Jul 2010 09:30:38 -0300 (ADT) Received: from [192.168.1.208] (81-179-24-86.dsl.pipex.com [81.179.24.86]) by mrelayeu.kundenserver.de (node=mrbap1) with ESMTP (Nemesis) id 0LlGqc-1P8XqC2JU6-00aWGm; Sat, 10 Jul 2010 14:30:23 +0200 Message-ID: <4C3867DD.1020004@2ndquadrant.com> Date: Sat, 10 Jul 2010 13:30:21 +0100 From: Greg Smith User-Agent: Thunderbird 2.0.0.24 (X11/20100317) MIME-Version: 1.0 To: Jesper Krogh CC: Matthew Wakeling , Kevin Grittner , Brad Nicholson , pgsql-performance@postgresql.org, Tom Lane Subject: Re: Need help in performance tuning. References: <4C369346.6010501@postnewspapers.com.au> <8760.1278650566@sss.pgh.pa.us> <1278680186.1914.36.camel@bnicholson-desktop> <4C36F57102000025000332F6@gw.wicourts.gov> <4C36FEAD02000025000332FC@gw.wicourts.gov> <4C37A9C1.1060405@2ndquadrant.com> <4C38143C.3080304@krogh.cc> In-Reply-To: <4C38143C.3080304@krogh.cc> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Provags-ID: V02:K0:FeORRb3Lio8v5zhkJf+bvly8PV6XTFjy6nphcwxivMb mHiRbgo1r0jVjiYu7wAh2fkeEQnwg46FfNXmB+gf9sC0PZ1t9C BYj/IDWMolM4gfrMSWXfZ67yg3+BSQx7HDXsx66iq+LyRcgbS6 XLAH0Freg2Ac9fQSfHfzr8oCW0hUVjc2k0PUhZbWa3vbkOSsoE KrZ0LC/6cAvOpzuXqKuGxVc+lIn5rjqjzBJoeprQeM= X-Virus-Scanned: Maia Mailguard 1.0.1 X-Spam-Status: No, hits=-1.9 tagged_above=-10 required=5 tests=BAYES_00=-1.9, RCVD_IN_DNSWL_NONE=-0.0001 X-Spam-Level: X-Archive-Number: 201007/174 X-Sequence-Number: 39563 Jesper Krogh wrote: > I dont think a build-in connection-poller (or similiar) would in any > way limit the actions and abillities of an external one? Two problems to recognize. First is that building something in has the potential to significantly limit use and therefore advancement of work on external pools, because of the "let's use the built in one instead of installing something extra" mentality. I'd rather have a great external project (which is what we have with pgBouncer) than a mediocre built-in one that becomes the preferred way just by nature of being in the core. If work on a core pooler was started right now, it would be years before that reached feature/performance parity, and during that time its existence would be a net loss compared to the current status quo for many who used it. The second problem is the limited amount of resources to work on improvements to PostgreSQL. If you want to improve the reach of PostgreSQL, I consider projects like materialized views and easy built-in partitioning to be orders of magnitude more useful things to work on than the marginal benefit of merging the features of the external pool software inside the database. I consider the whole topic a bit of a distraction compared to instead working on *any* of the highly rated ideas at http://postgresql.uservoice.com/forums/21853-general As a random technical note, I would recommend that anyone who is thinking about a pooler in core take a look at how pgBouncer uses libevent to respond to requests, a design model inspired by that of memcached. I haven't looked at it deeply yet, but my gut guess is that this proven successful model would be hard to graft on top of the existing PostgreSQL process design, and doing anything but that is unlikely to perform as well. -- Greg Smith 2ndQuadrant US Baltimore, MD PostgreSQL Training, Services and Support greg@2ndQuadrant.com www.2ndQuadrant.us