Received: from maia.hub.org (maia-2.hub.org [200.46.204.251]) by mail.postgresql.org (Postfix) with ESMTP id E4CD71337B5D for ; Thu, 30 Dec 2010 21:58:05 -0400 (AST) Received: from mail.postgresql.org ([200.46.204.86]) by maia.hub.org (mx1.hub.org [200.46.204.251]) (amavisd-maia, port 10024) with ESMTP id 35259-01 for ; Fri, 31 Dec 2010 01:57:58 +0000 (UTC) X-Greylist: from auto-whitelisted by SQLgrey-1.7.6 Received: from outmail149056.authsmtp.com (outmail149056.authsmtp.com [62.13.149.56]) by mail.postgresql.org (Postfix) with ESMTP id 2ED491337B5B for ; Thu, 30 Dec 2010 21:57:58 -0400 (AST) Received: from mail-c187.authsmtp.com (mail-c187.authsmtp.com [62.13.128.33]) by punt10.authsmtp.com (8.14.2/8.14.2/Kp) with ESMTP id oBV1vvsT010097; Fri, 31 Dec 2010 01:57:57 GMT Received: from [192.168.0.2] ([81.5.146.37]) (authenticated bits=0) by mail.authsmtp.com (8.14.2/8.14.2) with ESMTP id oBV1vuOE074788; Fri, 31 Dec 2010 01:57:56 GMT Subject: Re: Sync Rep Design From: Simon Riggs To: Robert Haas Cc: pgsql-hackers@postgresql.org In-Reply-To: References: <1293729972.1892.23804.camel@ebony> <4D1CC47E.7050207@kaltenbrunner.cc> <1293735853.1892.24886.camel@ebony> <4D1CEEAF.8050209@kaltenbrunner.cc> Content-Type: text/plain; charset="UTF-8" Date: Fri, 31 Dec 2010 01:57:34 +0000 Message-ID: <1293760654.1892.29635.camel@ebony> Mime-Version: 1.0 X-Mailer: Evolution 2.28.3 Content-Transfer-Encoding: 7bit X-Server-Quench: 630f7054-1481-11e0-ab46-001185d377ca X-AuthReport-Spam: If SPAM / abuse - report it at: http://www.authsmtp.com/abuse X-AuthRoute: OCdxZQATClZOTQEd DAteCiN5VAwpPBRK HVkIKg5MJUcNSQVJ NksadBtFawRbaVxS HGQLWlREUFx7XGR/ bgwfZQRDZ1RPWwN0 U09WR1pVCwUmXm5n B1hbLWxycAFBcHY+ Y0ZlXD5dX0QsckZ4 RlNVEWUHeGZhPWAC ARJccR5UcAJLdhoR aVd4ByJDAzANdhEY NiQQEgoKCH1kOSJe CjsANRo+TF0KEThU X-Authentic-SMTP: 61633235383639.1000:706 X-AuthFastPath: 0 (Was 255) X-AuthVirus-Status: No virus detected - but ensure you scan with your own anti-virus system. X-Virus-Scanned: Maia Mailguard 1.0.1 X-Spam-Status: No, hits=-1.9 tagged_above=-5 required=5 tests=BAYES_00=-1.9, RCVD_IN_DNSWL_NONE=-0.0001 X-Spam-Level: X-Archive-Number: 201012/2519 X-Sequence-Number: 177781 On Thu, 2010-12-30 at 16:47 -0500, Robert Haas wrote: > > It also does not address the more general (not sync rep specific) problem of > > how to deal with max_keep_segments which is a wart and I was hoping we could > > get rid of in 9.1 - but it would require a real standby registration or at > > least standby management possibility on the master not a halfway done one - > > so do we really need hot_standby_feedback as part of the inital sync-rep > > patch? > > And this is really the key point on which previous discussions of sync > rep stalled. Simon is clearly of the opinion that any system where > the slaves have an individual identities (aka "standby registration") > is a bad idea, but the only justification he's offered for that > position is the assertion that it doesn't allow any added > functionality. As you point out, and as has been pointed out before, > this is not true, but unless Simon has changed his position since the > last time we discussed this, he will not only refuse to include any > kind of standby identifier in any of his proposals, but will also > argue against including any such code even if it is written by someone > else. I don't understand why, but that's how it is. > > Synchronous replication would probably be done and committed by now if > it weren't for this issue. I'm not very clear what your response has to do with Stefan's comments. My general perspective is that MySQL released a simple design a year ahead of us, which should be to our collective shame. I will be working towards delivering something useful in this release. Standby registration is complicated and not necessary. If anybody needs to justify anything, it is the people that claim it is somehow essential. If you want increased complexity and features, you can have it, one day, but don't prevent everybody else from benefiting from simplicity, now. What we do need is performance, otherwise the feature is mostly unusable for production systems, without splitting your application into pieces. I would rather concentrate on a minimal set of functionality that we can all agree on. To show that, I have gone out of my way to include features specified by others, including exact names and behaviours of parameters. -- Simon Riggs http://www.2ndQuadrant.com/books/ PostgreSQL Development, 24x7 Support, Training and Services