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 1oLkzw-0004W1-WE for pgsql-hackers@arkaria.postgresql.org; Wed, 10 Aug 2022 12:39:45 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1oLkzv-0007YO-Sh for pgsql-hackers@arkaria.postgresql.org; Wed, 10 Aug 2022 12:39:43 +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 1oLkzv-0007Vl-Ez for pgsql-hackers@lists.postgresql.org; Wed, 10 Aug 2022 12:39:43 +0000 Received: from esa16.fujitsucc.c3s2.iphmx.com ([216.71.158.33]) by magus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1oLkzo-0006hm-Fc for pgsql-hackers@postgresql.org; Wed, 10 Aug 2022 12:39:43 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=fujitsu.com; i=@fujitsu.com; q=dns/txt; s=fj1; t=1660135177; x=1691671177; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=bEWfJgM3H57e9zScpo7jQRkVQlQpnzNXVFlOyvXWnrs=; b=DQahpzi9SqJPbaxLlk1UKO5Di356yB/P66ucfsNF/BQ1XmatoozK2622 aZxHkwqEMt2JBdJPMzKBHL1fod8nk3aqPCj31lYSaO5xySaMaB+w+nF3+ lOLf4wGHjyPLykp7P5kocZxrs3uYlORQhIDEg0bVf2V1iebFpjuthNDxx azBf95qNEk5a2D1oxgo6Y77/mVveTCca9LmzV/8PkdjEt3E+kJeYxWVF8 AEb/VMQy9ybvskkGYeSpID1IsfHAHLb9CXnO4OJzLmPtB4cbLlqQPZiD3 fRwuoXfcKItWwmWUQ6hfHs7Jb5x1iCg8WjxZOwby8bp51B7h8+sLPJrji A==; X-IronPort-AV: E=McAfee;i="6400,9594,10434"; a="62432612" X-IronPort-AV: E=Sophos;i="5.93,227,1654527600"; d="scan'208";a="62432612" Received: from mail-os0jpn01lp2111.outbound.protection.outlook.com (HELO JPN01-OS0-obe.outbound.protection.outlook.com) ([104.47.23.111]) by ob1.fujitsucc.c3s2.iphmx.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 10 Aug 2022 21:39:34 +0900 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=mykYvyvUhRzO/Yp7oSEXEquL47ngo+sd0jUZVQpOgaT3T3dRKgLQT7tvdQtat9F/P9eq5oC4ftjIdDzRFRge44cT2QVNNyPQMM8F8zyE23eqid9DRu1T7LTxVBetnGunjelOqcVCF0YByFh6mrXtwJHvk0o+0WXqAELJFEaytoSAlvYP8Xr4TP4k4Uog8ncZw3CLpI19/0bVSTBo6bjiuhwSACJxQ2Mk4zs/wZy5DJwe4eEIicndSIGApxeJ77ikuArdCfHzPcT+AhGY9D0EhXiII97FB/mghRpueuTSu9vph7N7xn1slVdO5GvNpo+GZtvqLNfg1bnO/YynPTExkQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=xyedbTQ41xug42u5B5k4CaEUNcKdTMcANxqOg/Bl4aU=; b=lFaoPfpfOlJugBcdV3A7U07/2AMp88a1GvNjQWVRmXRlYWocp32AfoehIMiR1Nd/74sb3NkxwOHV8Rhuvo3ym2/T+OqWuG8smV4VGFhELu8IvuKkGS56gopm4ZqCtzvjhBMtYsYpGTdH/DLrOOrwEvMqBseLFfx48Z+btCJsf2K/hi8Ti1YRELvdKp7iSeEL7fUsOCd6yYxJ07KY/tuNIoDZaW1O0GXvKLtPUsKgWxnjEa+E8GiMZWtKlemf89I9Nc0Cy0SneN2AmNP8Oo8CyB5vlXqqHonbxM1aqGTVkUHbzvRujs/+aWuAXeCW/Qo6+wmQlViFYyPdtUynh8RoVA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=fujitsu.com; dmarc=pass action=none header.from=fujitsu.com; dkim=pass header.d=fujitsu.com; arc=none Received: from TYWPR01MB8362.jpnprd01.prod.outlook.com (2603:1096:400:161::6) by OSAPR01MB3810.jpnprd01.prod.outlook.com (2603:1096:604:5c::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5504.16; Wed, 10 Aug 2022 12:39:29 +0000 Received: from TYWPR01MB8362.jpnprd01.prod.outlook.com ([fe80::c89a:4fdf:3cc8:f0cc]) by TYWPR01MB8362.jpnprd01.prod.outlook.com ([fe80::c89a:4fdf:3cc8:f0cc%8]) with mapi id 15.20.5504.020; Wed, 10 Aug 2022 12:39:29 +0000 From: "osumi.takamichi@fujitsu.com" To: 'Euler Taveira' , Melih Mutlu CC: Andres Freund , Amit Kapila , Marcos Pegoraro , pgsql-hackers , Peter Smith Subject: RE: logical replication restrictions Thread-Topic: logical replication restrictions Thread-Index: AQHXrjr/dnhMQw0WEEaWatvp8wVnp6utyLqAgACIAQCAASSFAIAA1CSAgPpd6YCAH3TQAIABmOYAgAABnwCAAuRKAIChoy8AgA4jEwCAKSMeAIACiZng Date: Wed, 10 Aug 2022 12:39:29 +0000 Message-ID: References: <73b06a32-56ab-4056-86ff-e307f3c316f1@www.fastmail.com> <20220322010410.m6ccotflls45d7vq@alap3.anarazel.de> <29bd8c6e-9c87-4a72-abea-52218a387e2e@www.fastmail.com> <85ee6c87-ca0b-4330-9a7a-8a6cd389f7e0@www.fastmail.com> In-Reply-To: <85ee6c87-ca0b-4330-9a7a-8a6cd389f7e0@www.fastmail.com> Accept-Language: ja-JP, en-US Content-Language: ja-JP X-MS-Has-Attach: X-MS-TNEF-Correlator: msip_labels: MSIP_Label_a7295cc1-d279-42ac-ab4d-3b0f4fece050_Enabled=true; MSIP_Label_a7295cc1-d279-42ac-ab4d-3b0f4fece050_SetDate=2022-08-10T12:32:18Z; MSIP_Label_a7295cc1-d279-42ac-ab4d-3b0f4fece050_Method=Standard; MSIP_Label_a7295cc1-d279-42ac-ab4d-3b0f4fece050_Name=FUJITSU-RESTRICTED?; MSIP_Label_a7295cc1-d279-42ac-ab4d-3b0f4fece050_SiteId=a19f121d-81e1-4858-a9d8-736e267fd4c7; MSIP_Label_a7295cc1-d279-42ac-ab4d-3b0f4fece050_ActionId=b07b9726-6449-458a-985f-db5e52782371; MSIP_Label_a7295cc1-d279-42ac-ab4d-3b0f4fece050_ContentBits=0 authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=fujitsu.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 615516bb-d634-4e75-0f98-08da7acd5e57 x-ms-traffictypediagnostic: OSAPR01MB3810:EE_ x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: FmWk0ao6XlKClPP2g0bYJkW42mDeKANwfg5zz8NA4y4Xlx89Lsr95R7PyFpQTbzu6OH0+aPzl/dDSWG7h8jL0VB2f/r/2sg995+AgoQysILT6fa5ubTf1U0RYAjllAA1Vqf2s3UAAR5MAC28P2EfYQe4Bmz+BmZ/v3sK4b74J7o4GbTgxlHR9zHdfNeEc46wXmRhwdssgwh8uBDlhaVGeVrfXEhnn8P8VJ1PILIK1jOW12Tlwait8T6lXpdQ0ddRt2TiyW1wDFTHzTc4bHg+Q4/r9bnogHqwZBG6iQUIW1NiAHXDd+wsUHoxxcP6HuUOZFAFVhYBB26eF96FkuT8Va7Kaw7x08L08F79zrhCYpExZKGYIx3DDD5XEXnZ/ruDDu9eKGmOGXoWqaPmGu1c0NWhsBaFsctwPyDNDFAwhwDBXwbWoCWsILVuOVbgCWEroFv5R53s4t+LNGpCzOeppgORvUa4r/yyrXRyRQptLMmbPptasKDmsmjye/ElUX2Uk2RrMhKIf4vvo30uTzyDcJQSmzN+Hn0TbSLGlkLkacj43dZNuEeXEm/K77/5FjJXqVtxbMPWB8SOgbCreDWu7y3NKhcMYd/S1YJPuWzlG5STgQg6CrGyTm0JxLyH18BKy65dwsu3UPzS/VBFHKnr2t4nNZOTow3ztzWGo1cuIprwiX4YivQmPbtZG4y2TvrSgrQMLWUwDJBr+wXrJMlU6pcMoLR33oNNcygVF79KrZ6Dqqt1rw2icqPM2p24tic8WLw+wyA/tV85KwUYC5W6zIgBlTOWf1hpdi8HKcj+bLckyjfeAMO55lnCSZQZuZD+ x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:TYWPR01MB8362.jpnprd01.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230016)(4636009)(346002)(136003)(39860400002)(366004)(396003)(376002)(2906002)(8936002)(7696005)(6506007)(83380400001)(5660300002)(54906003)(38100700002)(316002)(52536014)(110136005)(85182001)(66946007)(76116006)(33656002)(66446008)(66556008)(7116003)(55016003)(66476007)(186003)(9686003)(64756008)(8676002)(122000001)(41300700001)(86362001)(53546011)(71200400001)(4326008)(82960400001)(3480700007)(26005)(38070700005)(478600001);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?iso-2022-jp?B?S0lQb0FWTkg4ZUJPRDdsbFFJSTZGSGdXVjUyU2p3b0FOSHJNOHNOVTNo?= =?iso-2022-jp?B?ZFE2SmJMZ0J0VkJUcTR4bmxUUERvcXJuMC9LanUzakJXVDg0YVdEQmZ0?= =?iso-2022-jp?B?WCsyTTdZTldGYkVJaTBCN3kwL1VNVVljNms4SUJXdFA1aDNNYU9rVy84?= =?iso-2022-jp?B?VFZZZWd1S1ozeUs5cjBTU0U4TmFPQUVqTWh4YTdqSlFod0ZLWW8wcG9L?= =?iso-2022-jp?B?eEtDa3dyRStubWN5NXRvNDc3S3ZVYUJjNEdVUno3Mzg3R292L0UxUDRM?= =?iso-2022-jp?B?d1Qxbm5VK21TZEswc01LbTY4dVJOQjdNakF6OCs4S2dPMWprZEw5eVJT?= =?iso-2022-jp?B?Z1d1WVJ3b0hkU2MybG5OWTNwRzI1dlNSZkIyZHRnVHdDUzh0bHljUy9Q?= =?iso-2022-jp?B?NzdMTHNjVHR3RENyVmZLeUVtU2c4LzdVTjI5L3hWdVRHOWJydkUzTUhs?= =?iso-2022-jp?B?c0ZRUUlkQk5kc0QrTG5EMGh5T0pGMVNwbWRmOGdreWcyNHJLTDVsVEJG?= =?iso-2022-jp?B?TXZUZm5qbVdjSGQxMCtFSWR3allZTVNOcE1ZUmFtRUEwa3RmOFJaZytP?= =?iso-2022-jp?B?QnROM1FFdUJRWjRvN0E5WWxHczZaSUxJWjBHcGMrTW1Nb3h4TW5rbE14?= =?iso-2022-jp?B?MHB0M09Ua2FNUGMwMWVyT1VtOEhmbkdSQmhMcEsvYWZYbVdhaFhTOFlO?= =?iso-2022-jp?B?SkNzMWFubnBRN3FiZlJJQXArSUxFQ1p1VGIzRUdBY1dKdEpPVkZRcC81?= =?iso-2022-jp?B?R1Y3Um0zWW1veEJRTm13bzZtWVdGdWpwSXRUN2wzZFBheWpYazFBTUlY?= =?iso-2022-jp?B?M20xVFB3c2w3TVZEMFNEcGZ4WmxvSThwZFVWdDhNdm9QYmxHWEU2eVhG?= =?iso-2022-jp?B?dmI1WnhmREN0angrbFE1dDZ3a0szU2tqb2s4NUpqMmdndVgwaG9WUGJO?= =?iso-2022-jp?B?b0FGSHJVMmRNYTdUZEczMS9TZUYyQzRSbllWWDllY0hzNEFHbzhTck93?= =?iso-2022-jp?B?R21UQWM5Z09GQ1czR1JlZ3dYN1poMTl2aXRIdExsdGo3NUJ4K1NxRks1?= =?iso-2022-jp?B?RTVJc09BdnAxTW5sSFh0aHFPSmc3TnJzdEVuRGF2VHB3RnVaZWQ2UHln?= =?iso-2022-jp?B?K3FoaUZGSHZrVmMxcEhtd3hJN0dIM2ZycjZrTUI1NnphSndjSElVNDNG?= =?iso-2022-jp?B?N2Y4dWlRdzZRNUQzQllZVDZ4RkhKMVVFcUZPOEhnQTE5Z21Kdy9KbGxE?= =?iso-2022-jp?B?cXArT0lLMy9FNUdTYy9hMXBGanJnODFURXAvNVBQNUU1cE1tQStQcGUx?= =?iso-2022-jp?B?M3YwcXdDa1JOYnQ4U0o3ekRsYWwzZjNneUp5SlBDcFVvM2Q4TXlCTnY4?= =?iso-2022-jp?B?QkRXNjZ5RmdyMDl2ekt2clVzd3JTeklrYXRPaVRSaXZ2cHplTE4vMzRR?= =?iso-2022-jp?B?a3IxSGVKaDQzQlBNZENBVk9HdWRUUzJmVGhiV0IrYVpZWEFjT0l4WnhM?= =?iso-2022-jp?B?UGpoMi9laEU4SWE5bjREeGMxWWpyL0dyVnYvbVgrWjVGaU9LVm92TUpi?= =?iso-2022-jp?B?TUhaK3ZKUlN6ZkIxZU0zS1hVU2IzTmt3eXc0R0cxclpITG1uWVVWckY1?= =?iso-2022-jp?B?NjdwRElZSFJLOXRRSzNuclRaNC82bndSUWFyaFhnYkM1dzdEdWZ5UU9k?= =?iso-2022-jp?B?Nk9pRXNOc3Q5eDQwTE5lWWh0Q2ZtOGszdkFhSnlYTmUyWWRqcE9YWWpp?= =?iso-2022-jp?B?MStINDVuQUxWcG5McENtbGhIVzF3M29hSDJ6RzVvNUpuQUR1S1diUHk5?= =?iso-2022-jp?B?Q0FFRHViQTQ1dmhEY2VleGJ4T0VnYjFNTmpjdUhJOHp6N1B6NEhQV3FR?= =?iso-2022-jp?B?R0NzRlNRU0JWaEd5RTVLWmQ4YlgvZmVBQVZPdkZNNjUwTkVqMjhpaHQy?= =?iso-2022-jp?B?aDRvQmJsek9mNm5zMTJpVlQ1VFZwdVdoMzh2cEtKR0dEK0R5L3FLbUdv?= =?iso-2022-jp?B?SkJlQ1pka29lb2d1Z21xR1lPa0pZNDJVK1d0WDJzNWJNY1NuZ1JvTTRx?= =?iso-2022-jp?B?bEl5eVFVWEc0T2kxVlRuTmxJWSszWGd0WEQwSmphSm5xK3F2THdlMU1W?= =?iso-2022-jp?B?bUNUdThPUS9vSk4wNlBSUjdDUVYxWjJzT216WUFBUHRWWlBsNXVmeGhh?= =?iso-2022-jp?B?d2huZkhueWxpLzBkK25XN2RsZ1g1b2NnbUJqVVhtbU5wMmJva0lxWkpW?= =?iso-2022-jp?B?dnY1L2FhQ1hmenJWWFJJL3l4cm1BSE5oSlVUSkRyWFhGb0I2TGVFRzBy?= =?iso-2022-jp?B?MGhGWWN6S1VxM2RzQ1V2RkVEVklzZTY4OUE9PQ==?= Content-Type: text/plain; charset="iso-2022-jp" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: fujitsu.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: TYWPR01MB8362.jpnprd01.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 615516bb-d634-4e75-0f98-08da7acd5e57 X-MS-Exchange-CrossTenant-originalarrivaltime: 10 Aug 2022 12:39:29.5369 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: a19f121d-81e1-4858-a9d8-736e267fd4c7 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: t1ohsjz6e9ipM2TEUfjcU6QW+GOMb/PKIUPXfG7dycNI439tJMAiVgdtn29Hufw8Xzi70V5u4NuguiZrE6/5PlWjaT8M0FAz02Wzo/0mgNs= X-MS-Exchange-Transport-CrossTenantHeadersStamped: OSAPR01MB3810 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On Tuesday, August 9, 2022 6:47 AM Euler Taveira wrote: > I attached a v6. Hi, thank you for posting the updated patch. Minor review comments for v6. (1) commit message "If the subscriber sets min_apply_delay parameter, ..." I suggest we use subscription rather than subscriber, because this parameter refers to and is used for one subscription. My suggestion is "If one subscription sets min_apply_delay parameter, ..." In case if you agree, there are other places to apply this change. (2) commit message It might be better to write a note for committer like "Bump catalog version" at the bottom of the commit message. (3) unit alignment between recovery_min_apply_delay and min_apply_delay The former interprets input number as milliseconds in case of no units, while the latter takes it as seconds without units. I feel it would be better to make them aligned. (4) catalogs.sgml + Delay the application of changes by a specified amount of time. The + unit is in milliseconds. As a column explanation, it'd be better to use a noun in the first sentence to make this description aligned with other places. My suggestion is "Application delay of changes by ....". (5) pg_subscription.c There is one missing blank line before writing if statement. It's written in the AlterSubscription for other cases. @@ -1100,6 +1130,12 @@ AlterSubscription(ParseState *pstate, AlterSubscript= ionStmt *stmt, replaces[Anum_pg_subscription_subdi= sableonerr - 1] =3D true; } + if (IsSet(opts.specified_opts, SUBOPT_MIN_A= PPLY_DELAY)) (6) tab-complete.c The order of tab-complete parameters listed in the COMPLETE_WITH should follow alphabetical order. "min_apply_delay" can come before "origin= ". We can refer to d547f7c commit. (7) 032_apply_delay.pl There are missing whitespaces after comma in the mod functions. UPDATE test_tab SET b =3D md5(b) WHERE mod(a,2) =3D 0; DELETE FROM test_tab WHERE mod(a,3) =3D 0; Best Regards, Takamichi Osumi