Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1ja1i3-0001d2-SD for pgsql-docs@arkaria.postgresql.org; Sat, 16 May 2020 18:38:56 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1ja1i0-0006hC-Ri for pgsql-docs@arkaria.postgresql.org; Sat, 16 May 2020 18:38:52 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1ja1i0-0006h4-Fq for pgsql-docs@lists.postgresql.org; Sat, 16 May 2020 18:38:52 +0000 Received: from mail.postgrespro.ru ([93.174.131.139]) by magus.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1ja1hx-0003pb-1n for pgsql-docs@postgresql.org; Sat, 16 May 2020 18:38:51 +0000 Received: from localhost (localhost [127.0.0.1]) by mail.postgrespro.ru (Postfix) with ESMTP id 2B8B821C679A; Sat, 16 May 2020 21:38:47 +0300 (MSK) X-Virus-Scanned: Debian amavisd-new at postgrespro.ru X-Spam-Flag: NO X-Spam-Score: 0 X-Spam-Level: X-Spam-Status: No, score=x tagged_above=-99 required=4 WHITELISTED tests=[] autolearn=unavailable Received: from mail.postgrespro.ru (unknown [93.174.131.138]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) by mail.postgrespro.ru (Postfix) with ESMTPSA id B304021C675F; Sat, 16 May 2020 21:38:46 +0300 (MSK) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=postgrespro.ru; s=mail; t=1589654326; bh=pmly5Pm3+le7qq2C8xlns6IfvgvPFElKBD4LhOabQII=; h=Date:From:To:Cc:Subject:In-Reply-To:References; b=S6SlHK0w2tRQN4j7c6m67yBn/0TMNvGn55TUFi13wUmDYpvOtkHB4VtbohmoCr+OX +cqUE8JNO/eSYqvITNYEMEFq6IgUpGj4kLqTSrI3/eTIAjisWqPqVW3ZrX8J+0jyIx FXfbuXAdUOPeutHY4tzz0mm0OjKTspti2wraxCis= MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII; format=flowed Content-Transfer-Encoding: 7bit Date: Sat, 16 May 2020 21:38:46 +0300 From: Marina Polyakova To: Michael Paquier Cc: daniel@yesql.se, a.lakhin@postgrespro.ru, pgsql-docs@postgresql.org Subject: Re: Missing comma? In-Reply-To: <20200515021625.GD2462@paquier.xyz> References: <5B3957FE-D31E-4838-B35C-C2F0EEC3E557@yesql.se> <6fa8ba75057b16f88010c2b945f720c0@postgrespro.ru> <20200514000738.GA166343@paquier.xyz> <226cae2ef0bf26a59011de38eec9c7f4@postgrespro.ru> <20200515021625.GD2462@paquier.xyz> User-Agent: Roundcube Webmail/1.4.0 Message-ID: <37b6de0c81a52af5c6a120cd3341ce28@postgrespro.ru> X-Sender: m.polyakova@postgrespro.ru Organization: Postgres Professional List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk On 2020-05-15 05:16, Michael Paquier wrote: > On Thu, May 14, 2020 at 06:30:38PM +0300, Marina Polyakova wrote: >> Perhaps it will be useful for some users to know that relreplident = i >> does >> not mean that the required index exists (as in default case)?.. > > Yeah, that feels incomplete and I think that it would be good to close > the gap here, as the user has no way to guess how things work now just > by looking at the docs. What about switching your suggestion of "(if > any)" to be "(same as default if the index used got dropped)"? I like if we can explain the situation in more detail. But IMO the phrase "same as default" sounds as if we will try to find the primary index and use it if the required index (with pg_index.indisreplident = true) does not exist. What do you think of "(same as nothing if the index used got dropped)"? It seems that in this case we have the same behaviour: - we cannot update or delete rows from the table if the action is published because this table does not have a "working" replica identity; - we cannot apply updates or deletes on subscriber until we have a primary key or the published relation has replica identity full. P.S. Thank you for fixing the assertion failure [1] - I received it too yesterday :-) [1] https://github.com/postgres/postgres/commit/7ccb2f54d9f3f3c5b4ac092d62c846b02a47f8d5 -- Marina Polyakova Postgres Professional: http://www.postgrespro.com The Russian Postgres Company