Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cGVe7-0003yr-9i for pgsql-committers@arkaria.postgresql.org; Mon, 12 Dec 2016 18:48:19 +0000 Received: from localhost ([127.0.0.1] helo=postgresql.org) by malur.postgresql.org with smtp (Exim 4.84_2) (envelope-from ) id 1cGVe6-0005lD-Mj for pgsql-committers@arkaria.postgresql.org; Mon, 12 Dec 2016 18:48:18 +0000 Received: from makus.postgresql.org ([2001:4800:1501:1::229]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1cGVds-0005WM-RQ for pgsql-committers@postgresql.org; Mon, 12 Dec 2016 18:48:04 +0000 Received: from mail-wm0-x233.google.com ([2a00:1450:400c:c09::233]) by makus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.84_2) (envelope-from ) id 1cGVdl-0006L8-J9 for pgsql-committers@postgresql.org; Mon, 12 Dec 2016 18:48:03 +0000 Received: by mail-wm0-x233.google.com with SMTP id f82so82842699wmf.1 for ; Mon, 12 Dec 2016 10:47:57 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=2ndquadrant-com.20150623.gappssmtp.com; s=20150623; h=subject:to:references:cc:from:message-id:date:user-agent :mime-version:in-reply-to; bh=7zssiH3NIiCObJHB3a4rU1bAZcUlNRR3SZ5fyItbcMY=; b=wVW5MDfkQmJ8o0n5ihC/zNlO0yQKF/Uvy7b693o90TtwaZePmUP1ZB18jlNkpx+qdf xedqDcQ4wSCBEN6BwA1TbZ9CxXbNCmN3tqRSaI/RNoGbYVcIJr3CzlYc/3P8pwCU2UWu rx4tJjBNGG04uLwXuPaorBYExkWapnnz5Q+sGsvC6FnWDKC7UjBQhDLzYugt4p+0W0Rn sfGI3tzs/yFko/kAPXjPxNEEquZR7LdHuj7P024YKCMXCrRxm/dtcTQ2QPhZp1ORJQx4 h1nDhEt6E8eW7yz/uFl/8ey0HeBhh/HISjX+sfjRdgVUHVsVE4yAdDBCwWccn39GDw4k KDdA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:subject:to:references:cc:from:message-id:date :user-agent:mime-version:in-reply-to; bh=7zssiH3NIiCObJHB3a4rU1bAZcUlNRR3SZ5fyItbcMY=; b=BEsSTmsI+F8C3cNXzDWvhjm9oqQE/Edh4wv5bLQGRUvnw+qKDKgfXuNR6BVq+otyzo ltRS2VEc0jnqsyQuTigo9LwB0/4VNvu3ExGjtNM9jMmPIo3iLCqU4vEt2wVmCX1LE0uX klhH6/tiCkC++APhHac1S1D9sutpPq4w+46frZDtYKAadJNKgN3YGnhnKTjcYPXQctxb g7OrlLWnC0Nv+d2Slp+moSKB/QsCYPfQptkjYeckReqOxYRYAwpFxUmNG/D6tEJPmIiP UkQwpc/NjCzZzgODolnxHOcLjQEUlk4iNNJk57MBd+ytBU3eebcsI4cJTrNlnOcemZv9 IUEg== X-Gm-Message-State: AKaTC02vSmbHQ3zAFbYyLv2QqzQ92pqAT4bMx5on3aBaxkcw/IrDAVJpFmO1efPnM6bHd8DXzGWlC/ihYn8osas2AIQ6HnmFW0xcQGSieS+vSlC4sTLJzcBY3EHriEY50RcuIOgGbjpSfED2sR+qDadig37J8svriXSZCnhyvySGNPDbhhtVaqab7KlPxvTC1JgDhTwIbxVvi5kl X-Received: by 10.28.232.16 with SMTP id f16mr18069230wmh.103.1481568475342; Mon, 12 Dec 2016 10:47:55 -0800 (PST) Received: from [192.168.0.105] (150.123.broadband11.iol.cz. [90.178.123.150]) by smtp.gmail.com with ESMTPSA id q7sm58455757wjh.9.2016.12.12.10.47.54 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 12 Dec 2016 10:47:54 -0800 (PST) Subject: Re: pgsql: Add support for temporary replication slots To: Tom Lane , Peter Eisentraut References: <27274.1481557380@sss.pgh.pa.us> <27833.1481558144@sss.pgh.pa.us> Cc: pgsql-committers@postgresql.org From: Petr Jelinek Message-ID: <62935e6f-4f1b-c433-e0fa-7f936a38b3e5@2ndquadrant.com> Date: Mon, 12 Dec 2016 19:47:53 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.5.1 MIME-Version: 1.0 In-Reply-To: <27833.1481558144@sss.pgh.pa.us> Content-Type: multipart/mixed; boundary="------------17505E9CE55DB3885A4FE33D" X-Pg-Spam-Score: -2.6 (--) List-Archive: List-Help: List-ID: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: X-Mailing-List: pgsql-committers Precedence: bulk Sender: pgsql-committers-owner@postgresql.org This is a multi-part message in MIME format. --------------17505E9CE55DB3885A4FE33D Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit On 12/12/16 16:55, Tom Lane wrote: > I wrote: >> Peter Eisentraut writes: >>> Add support for temporary replication slots > >> Some of the slower buildfarm members are failing test-decoding-check since >> this went in. At least on prairiedog, it looks like a race condition in >> the test: > > Having now looked a bit more closely, that's almost certainly what it is: > the test is assuming that the old backend exits instantaneously, which > it doesn't. You might want to borrow the wait-for-previous-session-to-die > loop I put into src/test/modules/test_extensions/sql/test_extensions.sql > recently. (Make sure you get the fixed version ;-)) > Yes you are correct, we tried naively to first drop another slot in hopes that it will give the other backend enough time to close, but apparently that wasn't robust enough for slower machines. Attached is the fixed test using the loop from test_extensions (and yes I would have missed the pg_stat_clear_snapshot() call without the hint, thanks :) ). -- Petr Jelinek http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Training & Services --------------17505E9CE55DB3885A4FE33D Content-Type: application/x-patch; name="0001-Fix-the-test_decoding-slot-test-race-condition.patch" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename*0="0001-Fix-the-test_decoding-slot-test-race-condition.patch" RnJvbSBmNTUxY2ZlNDQwZDVjZTA4NjgyNGNkYjNiZTdhYjQ5NGY1Y2RlZjFk IE1vbiBTZXAgMTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBQZXRyIEplbGluZWsg PHBqbW9kb3NAcGptb2Rvcy5uZXQ+CkRhdGU6IE1vbiwgMTIgRGVjIDIwMTYg MTk6NDE6NDAgKzAxMDAKU3ViamVjdDogW1BBVENIXSBGaXggdGhlIHRlc3Rf ZGVjb2Rpbmcgc2xvdCB0ZXN0IHJhY2UgY29uZGl0aW9uCgotLS0KIGNvbnRy aWIvdGVzdF9kZWNvZGluZy9leHBlY3RlZC9zbG90Lm91dCB8IDE5ICsrKysr KysrKysrKysrLS0tLS0KIGNvbnRyaWIvdGVzdF9kZWNvZGluZy9zcWwvc2xv dC5zcWwgICAgICB8IDE2ICsrKysrKysrKysrKy0tLS0KIDIgZmlsZXMgY2hh bmdlZCwgMjYgaW5zZXJ0aW9ucygrKSwgOSBkZWxldGlvbnMoLSkKCmRpZmYg LS1naXQgYS9jb250cmliL3Rlc3RfZGVjb2RpbmcvZXhwZWN0ZWQvc2xvdC5v dXQgYi9jb250cmliL3Rlc3RfZGVjb2RpbmcvZXhwZWN0ZWQvc2xvdC5vdXQK aW5kZXggNWU2YjcwYi4uYzkxNzFmZiAxMDA2NDQKLS0tIGEvY29udHJpYi90 ZXN0X2RlY29kaW5nL2V4cGVjdGVkL3Nsb3Qub3V0CisrKyBiL2NvbnRyaWIv dGVzdF9kZWNvZGluZy9leHBlY3RlZC9zbG90Lm91dApAQCAtMjIsMTcgKzIy LDI2IEBAIFNFTEVDVCAnaW5pdCcgRlJPTSBwZ19jcmVhdGVfbG9naWNhbF9y ZXBsaWNhdGlvbl9zbG90KCdyZWdyZXNzaW9uX3Nsb3RfcCcsICd0ZXN0CiAg aW5pdAogKDEgcm93KQogCi0tLSByZWNvbm5lY3QgdG8gY2xlYW4gdGVtcCBz bG90cwotXGMKKy0tIGhlcmUgd2Ugd2FudCB0byBzdGFydCBhIG5ldyBzZXNz aW9uIGFuZCB3YWl0IHRpbGwgb2xkIG9uZSBpcyBnb25lCitzZWxlY3QgcGdf YmFja2VuZF9waWQoKSBhcyBvbGRwaWQgXGdzZXQKK1xjIC0KK2RvICdkZWNs YXJlIGMgaW50ID0gMDsKK2JlZ2luCisgIHdoaWxlIChzZWxlY3QgY291bnQo KikgZnJvbSBwZ19zdGF0X2FjdGl2aXR5IHdoZXJlIHBpZCA9ICcKKyAgICA6 J29sZHBpZCcKKyAgJykgPiAwIGxvb3AgYyA6PSBjICsgMTsgcGVyZm9ybSBw Z19zdGF0X2NsZWFyX3NuYXBzaG90KCk7IGVuZCBsb29wOworICByYWlzZSBs b2cgJydzbG90IHRlc3QgbG9vcGVkICUgdGltZXMnJywgYzsKK2VuZCc7Cist LSBzaG91bGQgZmFpbCBiZWNhdXNlIHRoZSB0ZW1wb3Jhcnkgc2xvdCB3YXMg ZHJvcHBlZCBhdXRvbWF0aWNhbGx5CitTRUxFQ1QgcGdfZHJvcF9yZXBsaWNh dGlvbl9zbG90KCdyZWdyZXNzaW9uX3Nsb3RfdCcpOworRVJST1I6ICByZXBs aWNhdGlvbiBzbG90ICJyZWdyZXNzaW9uX3Nsb3RfdCIgZG9lcyBub3QgZXhp c3QKKy0tIHBlcm1hbmVudCBzbG90IGhhcyBzdXJ2aXZlZAogU0VMRUNUIHBn X2Ryb3BfcmVwbGljYXRpb25fc2xvdCgncmVncmVzc2lvbl9zbG90X3AnKTsK ICBwZ19kcm9wX3JlcGxpY2F0aW9uX3Nsb3QgCiAtLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLQogIAogKDEgcm93KQogCi0tLSBzaG91bGQgZmFpbCBiZWNh dXNlIHRoZSB0ZW1wb3Jhcnkgc2xvdCB3YXMgZHJvcHBlZCBhdXRvbWF0aWNh bGx5Ci1TRUxFQ1QgcGdfZHJvcF9yZXBsaWNhdGlvbl9zbG90KCdyZWdyZXNz aW9uX3Nsb3RfdCcpOwotRVJST1I6ICByZXBsaWNhdGlvbiBzbG90ICJyZWdy ZXNzaW9uX3Nsb3RfdCIgZG9lcyBub3QgZXhpc3QKIC0tIHRlc3Qgc3dpdGNo aW5nIGJldHdlZW4gc2xvdHMgaW4gYSBzZXNzaW9uCiBTRUxFQ1QgJ2luaXQn IEZST00gcGdfY3JlYXRlX2xvZ2ljYWxfcmVwbGljYXRpb25fc2xvdCgncmVn cmVzc2lvbl9zbG90MScsICd0ZXN0X2RlY29kaW5nJywgdHJ1ZSk7CiAgP2Nv bHVtbj8gCmRpZmYgLS1naXQgYS9jb250cmliL3Rlc3RfZGVjb2Rpbmcvc3Fs L3Nsb3Quc3FsIGIvY29udHJpYi90ZXN0X2RlY29kaW5nL3NxbC9zbG90LnNx bAppbmRleCAzYjBhZWNkLi41ZDZkOTdhIDEwMDY0NAotLS0gYS9jb250cmli L3Rlc3RfZGVjb2Rpbmcvc3FsL3Nsb3Quc3FsCisrKyBiL2NvbnRyaWIvdGVz dF9kZWNvZGluZy9zcWwvc2xvdC5zcWwKQEAgLTQsMTQgKzQsMjIgQEAgU0VM RUNUICdpbml0JyBGUk9NIHBnX2NyZWF0ZV9sb2dpY2FsX3JlcGxpY2F0aW9u X3Nsb3QoJ3JlZ3Jlc3Npb25fc2xvdF90JywgJ3Rlc3QKIFNFTEVDVCBwZ19k cm9wX3JlcGxpY2F0aW9uX3Nsb3QoJ3JlZ3Jlc3Npb25fc2xvdF9wJyk7CiBT RUxFQ1QgJ2luaXQnIEZST00gcGdfY3JlYXRlX2xvZ2ljYWxfcmVwbGljYXRp b25fc2xvdCgncmVncmVzc2lvbl9zbG90X3AnLCAndGVzdF9kZWNvZGluZycs IGZhbHNlKTsKIAotLS0gcmVjb25uZWN0IHRvIGNsZWFuIHRlbXAgc2xvdHMK LVxjCi0KLVNFTEVDVCBwZ19kcm9wX3JlcGxpY2F0aW9uX3Nsb3QoJ3JlZ3Jl c3Npb25fc2xvdF9wJyk7CistLSBoZXJlIHdlIHdhbnQgdG8gc3RhcnQgYSBu ZXcgc2Vzc2lvbiBhbmQgd2FpdCB0aWxsIG9sZCBvbmUgaXMgZ29uZQorc2Vs ZWN0IHBnX2JhY2tlbmRfcGlkKCkgYXMgb2xkcGlkIFxnc2V0CitcYyAtCitk byAnZGVjbGFyZSBjIGludCA9IDA7CitiZWdpbgorICB3aGlsZSAoc2VsZWN0 IGNvdW50KCopIGZyb20gcGdfc3RhdF9hY3Rpdml0eSB3aGVyZSBwaWQgPSAn CisgICAgOidvbGRwaWQnCisgICcpID4gMCBsb29wIGMgOj0gYyArIDE7IHBl cmZvcm0gcGdfc3RhdF9jbGVhcl9zbmFwc2hvdCgpOyBlbmQgbG9vcDsKKyAg cmFpc2UgbG9nICcnc2xvdCB0ZXN0IGxvb3BlZCAlIHRpbWVzJycsIGM7Citl bmQnOwogCiAtLSBzaG91bGQgZmFpbCBiZWNhdXNlIHRoZSB0ZW1wb3Jhcnkg c2xvdCB3YXMgZHJvcHBlZCBhdXRvbWF0aWNhbGx5CiBTRUxFQ1QgcGdfZHJv cF9yZXBsaWNhdGlvbl9zbG90KCdyZWdyZXNzaW9uX3Nsb3RfdCcpOwogCist LSBwZXJtYW5lbnQgc2xvdCBoYXMgc3Vydml2ZWQKK1NFTEVDVCBwZ19kcm9w X3JlcGxpY2F0aW9uX3Nsb3QoJ3JlZ3Jlc3Npb25fc2xvdF9wJyk7CiAKIC0t IHRlc3Qgc3dpdGNoaW5nIGJldHdlZW4gc2xvdHMgaW4gYSBzZXNzaW9uCiBT RUxFQ1QgJ2luaXQnIEZST00gcGdfY3JlYXRlX2xvZ2ljYWxfcmVwbGljYXRp b25fc2xvdCgncmVncmVzc2lvbl9zbG90MScsICd0ZXN0X2RlY29kaW5nJywg dHJ1ZSk7Ci0tIAoyLjcuNAoK --------------17505E9CE55DB3885A4FE33D Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgsql-committers mailing list (pgsql-committers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-committers --------------17505E9CE55DB3885A4FE33D--