Received: from localhost (unknown [200.46.208.211]) by mail.postgresql.org (Postfix) with ESMTP id 531566352EA for ; Thu, 1 Oct 2009 12:48:02 -0300 (ADT) Received: from mail.postgresql.org ([200.46.204.86]) by localhost (mx1.hub.org [200.46.208.211]) (amavisd-maia, port 10024) with ESMTP id 00289-04-2 for ; Thu, 1 Oct 2009 15:47:50 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.7.6 Received: from exprod7og107.obsmtp.com (exprod7og107.obsmtp.com [64.18.2.167]) by mail.postgresql.org (Postfix) with SMTP id 9E349633C3F for ; Thu, 1 Oct 2009 12:47:46 -0300 (ADT) Received: from source ([209.85.219.215]) by exprod7ob107.postini.com ([64.18.6.12]) with SMTP ID DSNKSsTPIez0yJzMDfkWOIDTgb6BX6f98+V2@postini.com; Thu, 01 Oct 2009 08:47:47 PDT Received: by ewy11 with SMTP id 11so302964ewy.11 for ; Thu, 01 Oct 2009 08:47:44 -0700 (PDT) Received: by 10.210.32.28 with SMTP id f28mr8181828ebf.25.1254412064450; Thu, 01 Oct 2009 08:47:44 -0700 (PDT) Received: from ?192.168.1.117? ([88.195.103.165]) by mx.google.com with ESMTPS id 5sm140354eyh.16.2009.10.01.08.47.41 (version=TLSv1/SSLv3 cipher=RC4-MD5); Thu, 01 Oct 2009 08:47:42 -0700 (PDT) Message-ID: <4AC4CF18.50309@enterprisedb.com> Date: Thu, 01 Oct 2009 18:47:36 +0300 From: Heikki Linnakangas Organization: EnterpriseDB User-Agent: Mozilla-Thunderbird 2.0.0.22 (X11/20090706) MIME-Version: 1.0 To: Simon Riggs CC: pgsql-hackers Subject: Re: Hot Standby on git References: <1253958559.4449.833.camel@ebony.2ndQuadrant> <4AC2FBB9.7060304@enterprisedb.com> <1254408330.17864.233.camel@ebony.2ndQuadrant> In-Reply-To: <1254408330.17864.233.camel@ebony.2ndQuadrant> Content-Type: multipart/mixed; boundary="------------070909080402040807060402" X-Virus-Scanned: Maia Mailguard 1.0.1 X-Spam-Status: No, hits=-2.438 tagged_above=-10 required=5 tests=AWL=0.161, BAYES_00=-2.599 X-Spam-Level: X-Archive-Number: 200910/58 X-Sequence-Number: 146870 This is a multi-part message in MIME format. --------------070909080402040807060402 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Simon Riggs wrote: > On Wed, 2009-09-30 at 09:33 +0300, Heikki Linnakangas wrote: > >> Looking at the changes to StartupMultiXact, you're changing the locking >> so that both MultiXactOffsetControlLock and MultiXactMemberControlLock >> are acquire first before changing anything. Why? Looking at the other >> functions in that file, all others that access both files are happy to >> acquire one lock at a time, like StartupMultiXact does without the patch. > > I think those changes are just paranoia from early versions of patch. > > We now know for certain that MultiXact isn't used at the time > StartupMultiXact() is called. The same isn't true for StartupClog() and > StartupSubtrans() which need to cope with concurrent callers. > > Will remove changes and document that nothing touching it when it runs. Thanks, I reverted that in my working version already. Comment patch welcome if you feel it's needed. Attached is a new batch of changes I've been doing since last batch. These are again extracted from my git repository. It includes some of the add-on patches from your repository, the rest I believe have I had already did myself earlier, or are not necessary anymore for other reasons. Could you look into these two TODO items you listed on the wiki page: - Correct SET default_transaction_read_only and SET transaction_read_only (Heikki 21/9 Hackers) - Shutdown checkpoints must not clear locks for prepared transactions (Heikki 23/9) And if you could please review the changes I've been doing, just to make sure I haven't inadvertently introduced new bugs. That has happened before, as you've rightfully reminded me :-). There's also the issue that you can't go into hot standby mode after a shutdown checkpoint. I think that really should be fixed, it's just weird from a usability point of view if it doesn't work. -- Heikki Linnakangas EnterpriseDB http://www.enterprisedb.com --------------070909080402040807060402 Content-Type: application/x-gzip; name="hs-riggs-branch-20091001.tar.gz" Content-Transfer-Encoding: base64 Content-Disposition: inline; filename="hs-riggs-branch-20091001.tar.gz" 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 qtx0kZol9hZJLVKTAkPuvZOaBcvRxFZS2E1EW055ieyS+0ZCETiP2Q9WZDM7itBygRwaShFf EK5xNP8vbQNbhsmkrZ/paNCbG9Mk35Ptth3UbcN0thqi5N7mKc8eCUiGt6O5f2XoZ5sQ2P8I EXPSNHqHbTWMrBgD5bMPC5mUED6XctXVFMx58qo4+d2KgZNZC8r27kURJWWvx4WlbSUfOeGD 05O3x0cHFz2EP+xRnMlLxYCoWJMijHe7kkxiORfvBOtOsgtEIEaSiwyDAsMkGN8PjN343V2F 2A49UBwOF/0+ilMciIIHXiRxZTfJq7b5p5d8b1djvaboyBJTqbBqyY0sx6zUxEk4lXqporYk vGK/owXjT1E9Wxh/prco5gH0CMLvb17ARvrtJ2LtNqw5I2qNma9Ff4r59QqeEnZbJg3fY05r 7JGmnsJOdhImXZtC0xmBKcS9FLNuzAj9GhYm40RYFgFFuJ0um1G3uzURdorhMSOEJ+2IMnAM RoERJ4wJDI8cHofjMBxwDsD49ZsJCNRTTMCAHBZPBatBk3QuV4H3+4hyw3gDzv5Xilmtkia7 61LHc+J8jtVQJ4WabC7BOv6QwxGvP7YH+yFoH/V60HI6fmOrsB8Nm5y2+UcC+0HDS2bUQRD5 5fM5ArhiIg+jfzOsGTfAk3Uwhwfaa2qGEhh9Vm/o0B4F6UqVA3EWYaTQZVVHAllhKYWZkcK6 XLLAYJpCKFloqNG7Q0PCmcHEwTIBAftPddvb2mVZdsN8j+iv8yugpMj0Zph80RxNzOXbx9b8 /2yn4TYy/n9Ny7Wf/P8e4yL/P2sQtGyr4Th+YLn9fnPY9Ftev9NuDPsdt9VqtyzXa3W9b+H/ d3F1UzNs4xQOOHL/s7ovXesl+pEVu/81OPyPHfmQYA0mWLT/rnHeUeZVDP1myA7YQ7xoxM4M M7Lv593kiiy/6OvmNovCBovNobnIwXYez8Nd14HtIaZosUDX627Db3t+99uZojudmm1bohC1 ra0zJMJ4bUkjukApaWaUksbDlJJr6LvMDbRdZl64fohe0cjoFY2MXtHcRK9YWqznzY4pVry2 CnLb2o21pmQTFeQCnYemgiQNSHVd7edGys+8npnGVtIebK7oNGPu+74KzLyOdLUCk7U4ZDJN 8gsW0QRrdKjF5e82JQlDkcQyNSk+19SkJt1YU01KdHNvNen6Wk0pv0CrSa1YU6tJvU1rNaly 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 --------------070909080402040807060402--