Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1sYnCS-00E6Ix-1L for pgsql-general@arkaria.postgresql.org; Tue, 30 Jul 2024 13:47:35 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1sYnCQ-00ACfV-KI for pgsql-general@arkaria.postgresql.org; Tue, 30 Jul 2024 13:47:34 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1sYnCQ-00ACfM-8o for pgsql-general@lists.postgresql.org; Tue, 30 Jul 2024 13:47:34 +0000 Received: from mail-ej1-x62f.google.com ([2a00:1450:4864:20::62f]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94.2) (envelope-from ) id 1sYnCM-002FoD-TM for pgsql-general@lists.postgresql.org; Tue, 30 Jul 2024 13:47:33 +0000 Received: by mail-ej1-x62f.google.com with SMTP id a640c23a62f3a-a7a9a369055so518350966b.3 for ; Tue, 30 Jul 2024 06:47:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1722347250; x=1722952050; darn=lists.postgresql.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=qWzYgz0k2C2zfyw5Kf9honp2jwaSmqEf0c9Ls5cgRV4=; b=STu8FqRZk1r0K2HHvbpmWYzFMsBHl8aZ/2qhgA4CMJv4bzI+3jN/E1lxeEPq3GtZpe JlCOVjhYrMAhGPv2Hmg1niCbFyqRKYMGVXN+dZVk6gj/x4aql4ne/94bncarsyBSL7sI AxpXAYzD9usDGZijT7Bn6MTB13yXR5tSQfF/ez3Rk0xUbAPi8Dl4f+wuRDbPyeu+jobF esGtu4G/pyUvgJusjwjRjqMRQareC1M0e0dd1OI04zu4Suz/tzJV4JTxKBgmxJi3jueg bu9y81u/TFUPgK/YC5hRVIdJGaTSrDQAA/cUzwp0AsIXTzZ99vGXuVLwSJemYxozSVjZ G8fA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1722347250; x=1722952050; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=qWzYgz0k2C2zfyw5Kf9honp2jwaSmqEf0c9Ls5cgRV4=; b=HLCa8327CpIVdDJ9eW/XuBrJ1hAVRI1pdFeIIbsoY9AwBUzbp0OZVcj4MeCbN0mpm1 wXnuShDxtMS6kvQiNvU8uygPG5GG5FzSgetuDbCvCY0fc2yfuUPAtPsA06fsBIdqyTE7 f7oB829nRM2IKFO3Y318+TzfT02tEb7BXwYVGsH+yAuDJ/oVDBXwuznzH+FdnGyIFpCs HCbYMlyiUHOkVdZHE/24mCp+gb5ZGpn7KoG+9Pr/kHEsXXGWrFZizf87typHgp+JDh1/ I/NvtJj6PnTOTBkiaUMZkpWbQtpiyzgIlqR/p71Nz0udHrycp9zlrNHUvZs6EZz1Gfxd tZ/w== X-Gm-Message-State: AOJu0YzDE+17Wgs3oTmcKDsH+VG88nDiv1JBSqy4rjiaMqqGmPqTx+h9 w2a2YIiVYcsqfZs9ItlV8icF2ic2XHPfLp2MXvLdyJ7AFGPSVQljB2lJ7ozuPmIwFJOkxk6HgKL 8N4O+UD1rky2jgA7YTy0eewxwfDjrjyj9VMg= X-Google-Smtp-Source: AGHT+IEqiU0OBSwjU0zm9EmDH02QOqaJEZ2SNsx0TmUcmJdEW7787nOjE/T7qaJsCHjrD7y9tK8prvqtPac3zMVNoY8= X-Received: by 2002:a17:907:3fa4:b0:a72:6b08:ab27 with SMTP id a640c23a62f3a-a7d4006551emr881269866b.36.1722347249833; Tue, 30 Jul 2024 06:47:29 -0700 (PDT) MIME-Version: 1.0 From: Koen De Groote Date: Tue, 30 Jul 2024 15:47:18 +0200 Message-ID: Subject: Understanding conflicts on publications and subscriptions To: PostgreSQL General Content-Type: multipart/alternative; boundary="000000000000019e46061e7738f1" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --000000000000019e46061e7738f1 Content-Type: text/plain; charset="UTF-8" Reading this document: https://www.postgresql.org/docs/16/logical-replication-conflicts.html There is talk of the "disable_on_error" option when creating a subscription. The conflicts this applies to, I am assuming are only conflicts caused on the side of the subscription? As an attempt to apply new data doesn't work, because of modifications made since the initial copy, is that correct? I'm a bit confused by errors on the side of the publisher. Reading this document: https://www.postgresql.org/docs/16/sql-createpublication.html It states: > The tables added to a publication that publishes UPDATE and/or DELETE operations must have REPLICA IDENTITY defined. Otherwise those operations will be disallowed on those tables. This is not related to the subscription option "disable_on_error", I take it? Because it sure would be nice if there was a way to do a similar thing for the subscription, disabling it on error. Am I getting this right? "disable_on_error" is only on subscription, and errors on the publishers related to replica identity are not tied to that? Thanks for your time. --000000000000019e46061e7738f1 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable

There is talk of the "disable_on_error" option when creating a s= ubscription.

The conflicts this applies to, I am a= ssuming are only conflicts caused on the side of the subscription?

As an attempt to apply new data doesn't work, because = of modifications made since the initial copy, is that correct?

I'm a bit confused by errors on the side of= the publisher. Reading this document: https://www.postgresql.org/docs/16/sq= l-createpublication.html

It states:
=
> The tables added to a publication that publishes= =C2=A0UPDATE=C2=A0and/or=C2= =A0DELETE=C2=A0operations must hav= e=C2=A0REPLICA IDENTITY=C2=A0defined. Otherwise those operations will be disallowed on those tables.

This is not related to the subscription option "= ;disable_on_error", I take it?

Because it sur= e would be nice if there was a way to do a similar thing for the subscripti= on, disabling it on error.

Am I getting this right= ? "disable_on_error" is only on subscription, and errors on the p= ublishers related to replica identity are not tied to that?

<= /div>
Thanks for your time.
--000000000000019e46061e7738f1--