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.96) (envelope-from ) id 1wV24M-001dCj-2s for pgsql-hackers@arkaria.postgresql.org; Thu, 04 Jun 2026 07:00:47 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1wV24L-005Ht4-1h for pgsql-hackers@arkaria.postgresql.org; Thu, 04 Jun 2026 07:00:45 +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.96) (envelope-from ) id 1wV22O-005Duo-2f for pgsql-hackers@lists.postgresql.org; Thu, 04 Jun 2026 06:58:44 +0000 Received: from mail-pj1-x1036.google.com ([2607:f8b0:4864:20::1036]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1wV22M-00000001C63-2IJQ for pgsql-hackers@lists.postgresql.org; Thu, 04 Jun 2026 06:58:44 +0000 Received: by mail-pj1-x1036.google.com with SMTP id 98e67ed59e1d1-36d98b68d68so245431a91.2 for ; Wed, 03 Jun 2026 23:58:42 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1780556319; cv=none; d=google.com; s=arc-20240605; b=GzJ5LXy1ddjMtyhi33r1y7rKP9EN9lL/DmGq4ljzL6yym9an06ys2IvYn2etdoCY3Q TDsX6xFB1IGJryg47IyZ460kpb6BhHhxPJ1s7QdPNc9hH2gwrgg92lWfjsSUJLtGpOcC sLR6Yjemp+bkJyuYpuMeqiWtFA8EN7Xlhh1tWqtLWjZuKcZyLvODFgAWQ3JPhM/pR60Y ytSJ9aC2r/++UpRx1xBHu6G3XfAqfIxTrtgRyC5AfAdFg3H1R4AwDGEIhucCdBamDvwa tc6vC/ZDf6eb+dfjBtvBoy+hca8mv2CfFs/InKMCI1blqVFB5uJeB+BCzujagz/PLFOL L4uw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:dkim-signature; bh=SYGgGC0aGBT1cklIvR8ddvz3bnqzNMXDUw6PrvVqFig=; fh=4imTSlxbwpgnyiAjc1w2BLM6SE3h1FEOrCgZUwiNvEc=; b=RintOwBwRhCelMtY75852kQLgPnjk+eykjCX582/AG5jp/gjjS2lfYyTWeBJeqQAtI m0dZgRGisWHY5ZOjJx8G8TqyCdKkZfvwsDWV9po6uAxMjx7vzWQRcdQBVwpsZdpDNJNC 0v+LnFFsBMddYdEif1nG9gGS3bmMd412ZWhE+F75ATwLS66BDMgWQNBmF8SyMNC6e6rx xqjx5obuivZvS6Wjaa+A+esqaPzk079NxjinpKCeLwaMXj4ntutZmJ219Sg+RbD4Oova JL6L81wChslwgOarcCeG01IPzA6QkcWD2RknmCOGuHRIeUSL4qXNK9NOCnYIeWnLr5Mv x5tw==; darn=lists.postgresql.org ARC-Authentication-Results: i=1; mx.google.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1780556319; x=1781161119; darn=lists.postgresql.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=SYGgGC0aGBT1cklIvR8ddvz3bnqzNMXDUw6PrvVqFig=; b=MoBQgTosqUNi3Qxl20ym4PvWRqheQ7m/hmn/XganaFNioO+hAx+6AZF7pVUPxRFiKH s98kmLdGQtiJKCm68exUbho0OztbYei1nP7vsgz+3wMs9zfDUR0Zfxd9QFQEqgxm1EaQ 2X3ELn+RD1NNEb4VGvDYX2vPwP60hUYZfMVbtDLplpN3zsB+miiVTH0CloW4afymn04L 785sApOp72POYbSimC/p0N/i/DMteph71UwPsCRc0ZeWab8t73nVNBpNyeAzygyqDMkM dcdcP6xIO9eaO9EK8VRWmyrA0i8fNSbK0ohQUrnUoX8IQEYnqgii1xs0S/hHaAr0XMCf YFhA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1780556319; x=1781161119; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=SYGgGC0aGBT1cklIvR8ddvz3bnqzNMXDUw6PrvVqFig=; b=BcdjjwL4fzk3pwmr/B/MwC480bhQLPkSseKehSa4guhltlpVyptwwQLcYiEubOQ01v wOEHIoIJXZPQFihNNwBF8GsfenpmlBfsxTBeNZwjYovYuiiIr6CifYcQPN7KsYC30Wni ayTs65mwqgBy0YErY/AXo7sq1ZGetaOqMH4popYO4BWEVr/Lh0IuDf2RBsJSGWQl//n3 QOo/q+YjrEeLLVS2CySNirKybJ+79G50xSNImxbT3r/HiSnakxoFxNi4RivxzddwhYo5 X6TxDlC8Rps+v6SF7VgHLE1C7ixaTGcRrjwzFw6SYDCqIQhMnD4ggp7MdKK6pBQJ6sp+ /0gQ== X-Forwarded-Encrypted: i=1; AFNElJ+rUllxF05bXar+5urAgRQ1qtdE2kbK0pOxAxoGVrsLOcRfF2fp0DK2XlC7aCJ7pnnajDvCAxvq+yB32WWa@lists.postgresql.org X-Gm-Message-State: AOJu0Yzzk0X1K7W/mF65oBEWLC1dtpcL6XM+vpxhOuF6N4gGxN0k0f2Z uW4AHxVJJ3SqgRO8aVMLdgQE/o0pyAKdjPv3y9gC8OsfgOpnY+Pxq/nA5Q6c4hDvxE5EhTxxOHs Je7l+uYXXfOSe24AJjvtfhzj5RMysZ6k= X-Gm-Gg: Acq92OG9zNoicVq7QIbAUdGrxhd9YmUFLFz08UgRLg3fDg6kZs7Emhg+dCKCG2n/h9p JhKH+qdo9cSdNL/YbsnSDgPHBGRdYn6Dbe52tUa0vtNSsIpKTdp0TTS+az1koKDPxhmjGRF9vgd EFSWFEKorGDhrFvuKQ7XRr1ESuKUjaqJM2bAxDSMsQc2TbgSIOsCFaZCbpAyg+Q3W35lXMBl6mp w+RtDkhAhEbzRblhE7+VDNnTG4Uen9g5SIt5bPjokWO9HDb8uE8ffxRN54oSnITc/R6tGj/whrY z4k7I7IHSUTXwBP5EUvae5fHFMl3yl5dVRx23twXCg1PUw7DZDjkG/kfi/BfJmbi4qtac853u3Q HKtwO8KAyKdwWdSsnfBnH X-Received: by 2002:a17:90b:3f90:b0:36d:b680:3036 with SMTP id 98e67ed59e1d1-36e30838621mr6129686a91.4.1780556319233; Wed, 03 Jun 2026 23:58:39 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: shveta malik Date: Thu, 4 Jun 2026 12:28:24 +0530 X-Gm-Features: AVHnY4JCF5uLQuA4N5s9S32NTSDYu2ekHTDXowoCdKV5ux5mEwEMveT5zGBGWwY Message-ID: Subject: Re: Proposal: Conflict log history table for Logical Replication To: vignesh C Cc: Dilip Kumar , Nisha Moond , Amit Kapila , Peter Smith , Masahiko Sawada , Bharath Rupireddy , PostgreSQL Hackers , shveta malik Content-Type: text/plain; charset="UTF-8" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk > Here is the rebased version of the upgrade and \dRs patch which is > present in v45-0003 and v45-0004. There is no change in v45-0001 and > v45-0002, they are the same patch as in [1]. > [1] - https://www.postgresql.org/message-id/CAFiTN-vWZR9%2BU-kg6d2L3J0WGr6fqESnjah8vrguVCmpEG7SMA%40mail.gmail.com > A few comments: 1) We have introduced errors like these: + errdetail("Conflict schema modifications are currently disallowed."))); + errmsg("cannot move objects into or out of the conflict schema"))); But here: { /* Can't be system namespace */ if (IsCatalogNamespace(schemaid) || IsToastNamespace(schemaid) || IsConflictLogTableNamespace(schemaid)) ereport(ERROR, (errcode(ERRCODE_INVALID_PARAMETER_VALUE), errmsg("cannot add schema \"%s\" to publication", get_namespace_name(schemaid)), errdetail("This operation is not supported for system schemas."))); We have included conflict-schema in system schemas, I feel here too, we shall make a new condition and error mentioning 'conflict schema'. Irrespective of how TOAST-scehma is handled here, we can have cosnsitent handling at-least for new conflcit-schema. 2) +#include "catalog/dependency.h" +#include "commands/subscriptioncmds.h" conflict.c cimpiles without above 2 inclusions. v45-0002: 3) old name (pg_conflict_log_for_subid_16396) referred in commit message of 002 4) Since ProcessPendingConflictLogTuple() is called in CATCH-block at multiple places, it would be better if ProcessPendingConflictLogTuple() had its own try-catch block. This block could log/WARN CLT-insertion errors, clear them, and allow the caller's original error to remain. In rare-scenarios, we may end up overriding the actual error with a CLT insertion error. ~~ Reviewing more.. thanks Shveta