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 1wUMjq-0016rB-0p for pgsql-hackers@arkaria.postgresql.org; Tue, 02 Jun 2026 10:52:50 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1wUMjo-00EEup-02 for pgsql-hackers@arkaria.postgresql.org; Tue, 02 Jun 2026 10:52:48 +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 1wUMjn-00EEue-1m for pgsql-hackers@lists.postgresql.org; Tue, 02 Jun 2026 10:52:47 +0000 Received: from mail-lf1-x12a.google.com ([2a00:1450:4864:20::12a]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1wUMjl-00000000q7x-1mpm for pgsql-hackers@lists.postgresql.org; Tue, 02 Jun 2026 10:52:47 +0000 Received: by mail-lf1-x12a.google.com with SMTP id 2adb3069b0e04-5aa624ff3cbso3184350e87.3 for ; Tue, 02 Jun 2026 03:52:44 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1780397563; cv=none; d=google.com; s=arc-20240605; b=Qro5LhIH85vCygOT75IFAXR3bVTIcT32RA7QmT0KoxF1jb/6Wirh94hUhyVhnn5Zjh cjWc8wNmST0zzb1SxxYbw4f2BhWr9a3pL757qbbRP4VCztgEFwJn3WEtPVmxz75409Bg +zpq44rMYLQDZ7uaiGN+S+baNmSl8THM5c9OXKpo9qzsgRflYWKt/QyeWTSYKF2ZRr6N wdh79cm38SiQLEUNIh7DcsdvU+n73NzleAlRDNVOWGfLo4/bP8ADgnXwr+gPcLfHcwUi 93j4ly2T3vHTK906FQORUXWvZrxykoN3jQ2nmiTr/UvDiuNvy3sgZzV0dlVL4seYXiAm 7XNQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=1SembhfDHxMllREZIOVGkP9d17zIqdvq/+tGrDSzSog=; fh=WrCcgTkB7689ioE1L2nvWChffe50+7j3ydMkffGj//4=; b=iAq56OerjSohEgoD+Eyulu9sX0Fs3vjHOvldi8iScy0LJbDPmLjLZCFTZq3dHCf/nu CJMPegtvty/MJo/Dw2WFX7IyPEQtbtkNwD/uWSraMKi2u5o5lI9/ElmBxvfe9wSLqQ/6 NtN+YR9jawXQSJHvwM9VT8A8CCiU0aJuSE5KjZBNK3iEKHfcSgtUrQeyXtINrokb4rPQ E24rJzbFNa4QtAk2ScGcNheVeWXfV5rsTuUm8wv0zd1BBliyzB+RRMceYAq8pIc1Ge7T 9L3TTek0RpXDzU0MhDGDEonAJSOAs2//l/Y/nlV9vnNndk7hy8HRlfXfAeIcWnkk+WTf +wNQ==; 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=1780397563; x=1781002363; darn=lists.postgresql.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=1SembhfDHxMllREZIOVGkP9d17zIqdvq/+tGrDSzSog=; b=gJC34KU1PucnGleLgrXCxhPQJnjIB2Xi4iVIuIiu0wrdaDAaeuYfDgFH5RfVNePcJW qVPMUSLqW534kGv69fxlweZsANjuz6dQMrm9oTn1t4wN9qf/UW4VL1r4ac3QXBcy3fyt 2TWhXoR86WTmjBKepShQgcJtD3czUhdRNI/hVDrIFnlkFVH3+V/nRfy4RaJ/vGLaGgsi VWbYVpFVxZVcfv0YLq3TFHk+iAgbdSHTbaZ0TB8rWsmZE1uq6Z8BlbhEzZx4ii5Xazic x20g7AQ/7FE6KWkspSWH1HlUSn8zDa+nh2IIkIuGqtNSRusurVehmRsASQwgXZb0qruN 0oVw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1780397563; x=1781002363; h=content-transfer-encoding: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=1SembhfDHxMllREZIOVGkP9d17zIqdvq/+tGrDSzSog=; b=TGBeM1MOVbR6u8ky89rK9aI43vzbaTnRk7ip/4ldXKAupgCANX9Ui9/aS16FLlLr6E uvra/dDh8svryue7d6Pkk7ssHN9k/SX+Yby+KzNdZjsUipvqZg6pGzqA/FAhgpBvZuE8 kCp1M2Y7j9xUJhXYZV3NcZS1yH01RfOAARRikflTpJ017F635tBNBpUasZO9k7jxqb1v DRiW3UuELAQRJFJAOodhcO+ky69P15pwUE9BtTtihVaIBv/ZCs8SknzmS3egObzhuPVZ uavA/sNXKQo9hU06xJk5d5YgDgPWV5ybXDU0xRB5NQXFf8Ayn6IdXmDZgBsNRa8U4fke /W9g== X-Forwarded-Encrypted: i=1; AFNElJ+Opu4g7vbP9CsAnd0ZrieHIEw92ValuHO3FKfxj/4ayHoFjxvDLFTlpXL8RZUs3AXCueZS55TSrwJgNHCP@lists.postgresql.org X-Gm-Message-State: AOJu0YwdWE/5nTWkyY9FaOto+yFjR4o5DPkVXPnNY557G4mCrlK1InoI r8hTNCQRRrBuuaK6seKlqfwnk2JiHI1E/hBbF+S6puaOZH8gAKpe+wk2oUO+LKe+vvj9iz1g5tM fmtugTfUOoOvsCBAVlTIUoggZ9rtAlCY= X-Gm-Gg: Acq92OH24bARoU9PaB9+YgVNg/nXjPeVq2xB0i9FLEc5Ss6/FUwiwWnmudJoBwuy4Cr 8NoWdkzKkDvInZT3FCB7yOpESpMepmGkra1cYNAwnG7PwWGV2gOHG41dp9V3LPeES1LWwkfA0LF LiogKIBrEsoo9TfU7kNYbIyKu5J4LXOXaMkI20szqRcOzcJ9N6wv8V6FBngTzFNpqo5jC2mvMSl 8YpmPZZMNTrLtxCzOBNztExKxNu8XI4pzMUB5GdWjesc9yGtlhH64YbsdKRLFTd7mKK3ZugBui/ F9zFS8WxXuv2HOdBbOZimMJkwQPSOAlRwZcNzMewZV5M3Hu5/qaW8Wn0TS/nRXe0l5oJgqijyKe lDhMDHIlHrPYVZL+bS4g= X-Received: by 2002:a05:6512:3989:b0:5aa:6b85:85cf with SMTP id 2adb3069b0e04-5aa6b8589b2mr2785001e87.10.1780397562862; Tue, 02 Jun 2026 03:52:42 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Amit Kapila Date: Tue, 2 Jun 2026 16:22:30 +0530 X-Gm-Features: AVHnY4IxXVqjA9R_QdBWjHX3MfeCmMmax60omN5sxo-tX9n8P-QKzZ-jRnj6G08 Message-ID: Subject: Re: Proposal: Conflict log history table for Logical Replication To: Peter Smith Cc: Dilip Kumar , Nisha Moond , vignesh C , shveta malik , Masahiko Sawada , Bharath Rupireddy , PostgreSQL Hackers , shveta malik Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On Tue, Jun 2, 2026 at 1:12=E2=80=AFPM Peter Smith = wrote: > > I've been thinking more about this new option: > conflict_log_destination (enum) =3D 'log' or 'table' or 'all'. > > I think it behaves more like a bitmap than an enum. Also, having 'all' > as an enum value seems odd to me. IMO, this new option is actually > more similar to the 'publish' option from CREATE PUBLICATION. > > I suggest it might be better to implement this as a *string* option: > conflict_log_destination (string), and has allowed values of 'log' and 't= able'. > > e.g. > conflict_log_destination =3D 'log' > conflict_log_destination =3D 'table' > conflict_log_destination =3D 'log, table' > > Apart from being more intuitive and readable, this way is also > future-proof in case some 3rd/4th/etc way of logging is invented -- > e.g. the user can define whatever combinations they want instead of > being stuck with only "all". > I think if we support other formats where conflict logs can be stored then 'all' will be more relevant as instead of typing all the formats individually users can use 'all'. Also, we should be able to extend this option to multi-value if required in future, so the current proposal seems reasonable to me. --=20 With Regards, Amit Kapila.