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 1vnV77-0082WN-2n for pgsql-hackers@arkaria.postgresql.org; Wed, 04 Feb 2026 05:07:42 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1vnV76-0095Tb-37 for pgsql-hackers@arkaria.postgresql.org; Wed, 04 Feb 2026 05:07:40 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1vnV76-0095TS-1S for pgsql-hackers@lists.postgresql.org; Wed, 04 Feb 2026 05:07:40 +0000 Received: from mail-japanwestazon11021096.outbound.protection.outlook.com ([40.107.74.96] helo=OS0P286CU010.outbound.protection.outlook.com) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.98.2) (envelope-from ) id 1vnV73-00000000TD4-2jwN for pgsql-hackers@postgresql.org; Wed, 04 Feb 2026 05:07:38 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=gndc9lSdjCk6ThK+XyHEmuhCsItTSGtfKpr1RuzqYF+kEVreUXqKwbRxkXoZMisIv1n/mB4H8e2VEiaBY8GizcE1onRygKxKQPJjo3FgBYHxdWTLtFmflu4ekOJyIt3dzt5PUD66K0ZRbD7aCcvb0ysfm3O7w6nNYS1W9gRv3/7LpMczwS0JCU8Dc4rADljFciUqueQoP+hSgwqj3EFyMvvUpk1bPCPcBh55ldQdIC+WA+JPvzYA/1AyR/MsZHqag8JaAuFJCCJK1WVwQ96xBdtn5xKKIuhWt/Xf21VPNLgSFDpyqdUqzXlwvfkbs07dsxINc1WxRbi/NckcPYbn6Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=6yWfR4oIHO/9m2vzg2wKLuFKcJ+al8twez3aHhGVSBg=; b=m2q3wMYt8K02vTMVT2u7IR87UwSK8WaN9zvqQWbaaUWccFLmn8lczVhW/Df8uuXfpv6evwf60kvTFZwB/8W9l3W3NwQ94OmA9+9rUxq0e01MlfXOnnepAaPPpRE9WnsYmU4vZVNOpNJLI9mtlBU7dO40WUa6cfbRrjY4RdppIhaAiKjjAC7LurqqsdebsSDFRjWRvvKzNMP8m9jKAKXJe0SWWnpsatYG4bekIZMstUDlTv9Zx039B4zr2+kWRrDIYVlkwrlk1EZZgnt2W7itXwywi7R0nqwVNuvG7F5xjqFI3stlXAg6vWQoV/oCt3ktqwSK5zLg0m8rhcm+olfrgA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=sraoss.co.jp; dmarc=pass action=none header.from=sraoss.co.jp; dkim=pass header.d=sraoss.co.jp; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sraoss.co.jp; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=6yWfR4oIHO/9m2vzg2wKLuFKcJ+al8twez3aHhGVSBg=; b=fFxnhYZ8zhTcCMLcd55BMZIFxy9Hk1MAUDbe8YrxKeKvEm8Y0evDVJzUucgtfGm8AmdfPc2qwzRA24vt+LsRsWgkocacK9DavpUWDt18fWNdYEtXMnu6WeJMdTg809n/IrMB1KKOgVupQwNhPezJPjOjIbrb0TaxB6wjyd9EGk5QEMjR89n9q8mvOXgnJpTlYFqCUREfNFlHdyKwznAZCXm+fBUvtoW0MZ+Z8bMCoXqyN18Gke9i7EV2SzK2ugJPHgCHQC59wQIU3zCuQXC8AkCifHcX5v9A22IhzvS2cUh1j8bLy60UoPCVVDL8PIGcrIxDioEZ0qDqM0iiXVznVg== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=sraoss.co.jp; Received: from OSZP286MB2160.JPNP286.PROD.OUTLOOK.COM (2603:1096:604:189::12) by TY3P286MB3616.JPNP286.PROD.OUTLOOK.COM (2603:1096:400:3b4::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9564.16; Wed, 4 Feb 2026 05:07:32 +0000 Received: from OSZP286MB2160.JPNP286.PROD.OUTLOOK.COM ([fe80::406d:15ce:1e21:6f81]) by OSZP286MB2160.JPNP286.PROD.OUTLOOK.COM ([fe80::406d:15ce:1e21:6f81%4]) with mapi id 15.20.9587.010; Wed, 4 Feb 2026 05:07:32 +0000 Date: Wed, 4 Feb 2026 14:07:31 +0900 From: Yugo Nagata To: Pgsql Hackers Subject: Warn when creating or enabling a subscription with max_logical_replication_workers = 0 Message-Id: <20260204140731.0e4b511906ac748abad1f3d9@sraoss.co.jp> X-Mailer: Sylpheed 3.8.0beta1 (GTK+ 2.24.33; x86_64-pc-linux-gnu) Content-Type: multipart/mixed; boundary="Multipart=_Wed__4_Feb_2026_14_07_31_+0900_OBYONg+Os_HuGbBm" X-ClientProxiedBy: TYWP286CA0033.JPNP286.PROD.OUTLOOK.COM (2603:1096:400:262::18) To OSZP286MB2160.JPNP286.PROD.OUTLOOK.COM (2603:1096:604:189::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: OSZP286MB2160:EE_|TY3P286MB3616:EE_ X-MS-Office365-Filtering-Correlation-Id: 9e5e3410-df5d-4dc2-5698-08de63ab4d70 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|366016|1800799024|10070799003|6049299003|4053099003; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?H/tKxnW7MYmqz0k6/p+wPHwAW/S+58y9hZuDoH1fpDBaXZHnHeuozL7+QmDm?= =?us-ascii?Q?4tSQjeFI1a3u12t0Yhsmm3oZehNgc9fftmG83kRGP/pSfH/XUx3pCPgWaqc0?= =?us-ascii?Q?nE/7HJS+T84cQR0Qtm8VKeApwYK9LdljCdy20j5Ps4ExOhd5Hsbif9Z59kVr?= =?us-ascii?Q?TQymq/NZTjHQFC7W0nJxiAJLEVmRTvHzSACBJPIizVJUY1zzgLDqUlfHDMzK?= =?us-ascii?Q?TiD/w0I8u8NAS5A6d+vkeVm3xogOOJ+nHrGrVeo6LE30co3cpNVafil2ZywG?= =?us-ascii?Q?TKiZU23D+PifLTitAwhLolSow71VluxDCPYRJSEeOzCyPTZA8VeErM83yV/3?= =?us-ascii?Q?8DnkMc5ivquOaAL2V0WnA3MKr/MS3i1SKh1PSzjKREHdZ7z5dFdin54XLMR5?= =?us-ascii?Q?D2JcJC6Tptm85zjrprRD2geBjb1YoUQnIox+AQaicBX1hx1oCWXsNcaoxFMw?= =?us-ascii?Q?1LyUMMSXQT8t4/IG7dq/SS081bwBqPObJaYI2/XRarn5jVvAr3nvve9nRPfM?= =?us-ascii?Q?uDLZZ2ER1qR1WjykDbJzU5/e41XW+J2ZTGxsXBSgCFG4LSMkc+dAcrELrbrX?= =?us-ascii?Q?XLx+mzbSdHBDXajKedSeg/qzOHsZh3jhqr+0fMgBlvq/eauf+wpkybbjoNaW?= =?us-ascii?Q?liNkCawhHPIpN7IMYI9KGws/ejzFfJOPQ7jnNDwJjHuTrXIT4RZZAFbPqn2N?= =?us-ascii?Q?fwr7fbG88DitMTokr8DcArnh2F8dL6mwuEoLaxUSparOG9JWeFVW2NUd3rBy?= =?us-ascii?Q?rYEqCiLm2qftyPDW8Uv/PkZuNvm36/1KuWrc+Yz2HOACZGm/tLaDXn6Dbl5c?= =?us-ascii?Q?Vq8DCI3fFk9ZMuEwLkHkykx+roA3U1F74jkZAjGjZShbyHOdX1MsZsUKlIRE?= =?us-ascii?Q?RTxml9a2ylzpzYlEVv68J3hoNRVGvzy5DoVv8CsRqTWuG8GLN+y1GxxllEhT?= =?us-ascii?Q?jpPo1q3SXUf2D6AkrstDKFTB3gAlNcurjdEsud6FgrCX/3QnCvbSEJPzupBa?= =?us-ascii?Q?e+RNC+xnuMuq4WgEMylqyp51Mg5LZtzQpWYTw/ag+SfntdqZYRUtj3gfKykq?= =?us-ascii?Q?kbu/OmG2LGJ8SWJBRk5Xc6aooGoWdDNa/ge/7hrAzJ1FcVi/kA0kEb7+X+JE?= =?us-ascii?Q?dLnUsCjLpyXGyzsjcOOxnm4dNUCdTS2VsD1JWai8laKvjCMwZnaVpC6TsDjL?= =?us-ascii?Q?EbIowmAqGqup21qKpsBIE6H0yKmo52whfUcOmWfl2K09gHbbon1bJWJCtjCK?= =?us-ascii?Q?vL14rKuuAk3fhj429G7R+nTWF17mwRIsc+0owM2uID+j3jD+SEEgkR2ajJoy?= =?us-ascii?Q?GQq6Ik86nR4Hml0wuEz1fD0vqUqAI948yVO3eAD55V2by7HkbDR1c82IhUvc?= =?us-ascii?Q?+qS65vuFZMF989ej69mWOLsuPeOVUkpRZ3L738nnC7EOxfc2yg7LZl/7jSAp?= =?us-ascii?Q?PLSyC6CEhWq86XmL2+uhfPunLkql38LS6tqkCNzhgEWpqP/WHUIXXWtCG/b6?= =?us-ascii?Q?xIZpvXa2AFEIjavnExsZaD1PUci4K9+5ljmffecx3v+B+POPtzteic9aY9TS?= =?us-ascii?Q?fC1Mz/k4/t5FjSLWpGo=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:OSZP286MB2160.JPNP286.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230040)(376014)(366016)(1800799024)(10070799003)(6049299003)(4053099003);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 2 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?CoSmZBQGKtPEnUGdBRNw2NBFrgA8FFZWJrjxyg+SrfqRepnY7x5dAqbaVk1/?= =?us-ascii?Q?zQ/aBLxSzMa0kOKLeD6Yj6XpqLKWPgrvaW5kFT1Hj89BzeVB85l8SJID0HmU?= =?us-ascii?Q?0+fMXK8A6BE9yF1nfvOwJ8+SkCKeJg9KqJhGXwDtN78D4WmJTFEiM08V6NBL?= =?us-ascii?Q?ksx5BydSQ4pvBD29EyQfgKwn/eHf3VwC5IBD0OF/L8mXmN54ojIkkHEarCde?= =?us-ascii?Q?/OMPbGB99gtsw1pIDgiZIRRNssembkDu5WCGg1xy7PlpSIivVtqD9TaFktdD?= =?us-ascii?Q?7qBJhR7Wv9V8hGX9gv8TiSq5hB1P/Cmoxeajjw5RqjuHJpd1a74EjaBDCv16?= =?us-ascii?Q?j5xxv36wefNawTPG/ZI8QQfW9dTCTfHODc6hCtT5h8Fg1BAuTdR3oqec8I/y?= =?us-ascii?Q?6ErTonU+bxFB1EtbhjIqkCyAB5CJ2q8CrYJXxr4PWA6At6ogNRTkiWRZZJ6X?= =?us-ascii?Q?dwN11QLlK/xv552tQBGVOpeXVlN1e/juVBAnnXmJLZQfJFuZjgySIFg8hP/b?= =?us-ascii?Q?kFeP3asG93ckAXcaXLUJ+RQCtI5gXrcBPWUTvJOj01wjKaaoFKxscLHKGm9U?= =?us-ascii?Q?VnvG8gZxRkJeiB27xSwsSN5TmXpQEUvOu/eFnY/4PmGlNTTL+YKazfM72MfQ?= =?us-ascii?Q?DLj47aL9SOscMeEc69tHs0xE4isTS12y6qaUXPg7GVWGcHL9R7eHHXBdyNKa?= =?us-ascii?Q?FLn+ibMoOP1Mh7FPbaV+o0sfzRE+LTEZVJ4WODeRaqztJb3cd2fH5ywBklfu?= =?us-ascii?Q?PGkJMipI16AvfRfkv7Tg1eTUqX2essAz8QvHA4PvkfJ6JKBQ2/roVviRkqWd?= =?us-ascii?Q?qu0nSBN2FtbXtmJce0iHgUkgqPdu1o7RMkxfBqLo1AiEKhwa9+l+1bbfj2VV?= =?us-ascii?Q?CIqu+iZkQyD8Jl8jcIxgBjGlYOQ4aXIWAvgHrrLRaTRc0pu05SYAwLVL4P0d?= =?us-ascii?Q?zHIAedioTMecFVAOWm5V1Rcx+PpGgVt8yFQmaiyqgNBs0HE6OQ6mImb3AGxH?= =?us-ascii?Q?Avi6oUu/hYOb5VcZXRPv15ue4T/gwsVYYOfgEKu0/oirg8tFrwafNGrNK61b?= =?us-ascii?Q?U+oKEfcZeeRedHDCn//oPgp8K7U3h1qTolpRjTNx5CMdXaqIAnsdosy2Dm0J?= =?us-ascii?Q?pN2VB3OjNuMypMhqnQN6Aw1ZXLZI+9gWoFNDdg8b/+qgyz5YiEsOQUt298Xg?= =?us-ascii?Q?ejPn9eV6ulUl0yeE8mzYN6+66JOD52XWf0o4/E8h+uuV74dxqGzHHWH1ZPEg?= =?us-ascii?Q?qD5pnPZkKTIz8LVDxIahXlBiOuQ5K74KAe1uICu42VNMGzAi8Jk0F0wzugoc?= =?us-ascii?Q?+fhr8mfqaQrUj7l7oViaPYfS+YH9CSjhk6B/I5Jupt2sk5frm5RC9DCYwBiX?= =?us-ascii?Q?UGisQUCrY2hkBLfxORlTbiiIVkUG+inJq1Bq5XD+eGc4T5QqEgWhJ3thbFZw?= =?us-ascii?Q?5pkFJwdwkRC65p+edBstx67fAdu6kcL7h6UhA8dXBJx4YSRlJj1cgq9PcP3o?= =?us-ascii?Q?ksqvD19y+44QtzZ20uK9mxurqQDgCw/oJFrL7so59JeLJEZtAxjuyd22vIV3?= =?us-ascii?Q?lE2ZEOhx7lBrb9wG3feU8xalQ7KrKRPSU/eL3WupsT5bFXjn6QPzDej3gDBO?= =?us-ascii?Q?RzJA1/dqcep7LcD4c9xr+Ho4Lz+KEuOxTYp7wflTQxJnDDeupqOrHUuk1vZJ?= =?us-ascii?Q?QLKjZrnTFUrpMQ7M0w2rnbkE+ZFIMP+WnF4uq4bj0ByRpsvQonddyzqp1oDX?= =?us-ascii?Q?Ppu6IWdt6Mw4Z5VyopPc+b+BJQpI250VmZc0U5gorCjJLdaZLI3E/dfPqaMp?= X-MS-Exchange-AntiSpam-MessageData-1: y67JRPPMuKNoKQ== X-OriginatorOrg: sraoss.co.jp X-MS-Exchange-CrossTenant-Network-Message-Id: 9e5e3410-df5d-4dc2-5698-08de63ab4d70 X-MS-Exchange-CrossTenant-AuthSource: OSZP286MB2160.JPNP286.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Feb 2026 05:07:32.3989 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 75db6c32-352e-4063-ae79-cafb8623f6db X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: K0/VIVqJUFejke8rs3khALo7P1ovvSTQjON/M2QGBuJw3hVrnNlVD9CTfXQUApu9RzcXDqHLvIQvC9uUqSwYnw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: TY3P286MB3616 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --Multipart=_Wed__4_Feb_2026_14_07_31_+0900_OBYONg+Os_HuGbBm Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Hi, I would like to propose emitting a warning when creating or enabling a subscription while max_logical_replication_workers is set to 0. In this case, the CREATE/ALTER SUBSCRIPTION command completes successfully without any warning, making it difficult to notice that logical replication cannot start. Of course, users can confirm whether logical replication is working by checking system views such as pg_stat_replication or pg_stat_subscription. However, emitting warnings explicitly in these cases would make this situation more visible. We have seen user reports where this behavior caused confusion, with users wondering why replication did not start. I've attached a patch to address this. Regards, Yugo Nagata -- Yugo Nagata --Multipart=_Wed__4_Feb_2026_14_07_31_+0900_OBYONg+Os_HuGbBm Content-Type: text/x-diff; name="0001-Warn-when-creating-or-enabling-a-subscription-with-l.patch" Content-Disposition: attachment; filename="0001-Warn-when-creating-or-enabling-a-subscription-with-l.patch" Content-Transfer-Encoding: 7bit From 6e59f4bd435b7e34837559c952f6b04475b43b09 Mon Sep 17 00:00:00 2001 From: Yugo Nagata Date: Sun, 1 Feb 2026 23:09:46 +0900 Subject: [PATCH] Warn when creating or enabling a subscription with logical replication disabled If max_logical_replication_workers is zero, logical replication is disabled and will never start, even if a subscription is created or enabled. Previously, these commands completed successfully without any warning, making it difficult to notice that logical replication could not start. Emit warnings in these cases to make this situation more visible. --- src/backend/commands/subscriptioncmds.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/backend/commands/subscriptioncmds.c b/src/backend/commands/subscriptioncmds.c index 0b3c8499b49..55ba4bfb53e 100644 --- a/src/backend/commands/subscriptioncmds.c +++ b/src/backend/commands/subscriptioncmds.c @@ -906,7 +906,14 @@ CreateSubscription(ParseState *pstate, CreateSubscriptionStmt *stmt, * conflict during replication. */ if (opts.enabled || opts.retaindeadtuples) + { + if (max_logical_replication_workers == 0) + ereport(WARNING, + (errmsg("subscription was created, but logical replication is disabled"), + errhint("To initiate replication, set \"max_logical_replication_workers\" to a non zero value."))); + ApplyLauncherWakeupAtCommit(); + } ObjectAddressSet(myself, SubscriptionRelationId, subid); @@ -1694,7 +1701,14 @@ AlterSubscription(ParseState *pstate, AlterSubscriptionStmt *stmt, replaces[Anum_pg_subscription_subenabled - 1] = true; if (opts.enabled) + { + if (max_logical_replication_workers == 0) + ereport(WARNING, + (errmsg("subscription was enabled, but logical replication is disabled"), + errhint("To initiate replication, set \"max_logical_replication_workers\" to a non zero value."))); + ApplyLauncherWakeupAtCommit(); + } update_tuple = true; -- 2.43.0 --Multipart=_Wed__4_Feb_2026_14_07_31_+0900_OBYONg+Os_HuGbBm--