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 1vKsNb-00Bq1W-2T for pgsql-hackers@arkaria.postgresql.org; Mon, 17 Nov 2025 06:06:22 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1vKsMZ-00CG90-0P for pgsql-hackers@arkaria.postgresql.org; Mon, 17 Nov 2025 06:05:19 +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 1vKsMY-00CG8r-2O for pgsql-hackers@lists.postgresql.org; Mon, 17 Nov 2025 06:05:18 +0000 Received: from mail-qt1-x834.google.com ([2607:f8b0:4864:20::834]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from ) id 1vKsMW-0089Pt-1S for pgsql-hackers@lists.postgresql.org; Mon, 17 Nov 2025 06:05:18 +0000 Received: by mail-qt1-x834.google.com with SMTP id d75a77b69052e-4ee158187aaso13174231cf.0 for ; Sun, 16 Nov 2025 22:05:15 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1763359514; x=1763964314; 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=DEmhoiltjLHS40ZYX9LFFpPuqX6EosgccB89mXa6LAQ=; b=jNcwWNLCO1e3dk23lRO6mSRQTk2iMkOP36zxIS1/vUd3HVrqDGKHhqzyzzGkdMaN92 PAFWD3FdjnV9zuV1QXYk3lJ5dyqgTvIAWYOeflR42pqAoA1TsHAVlvytBDdoTXymdakc P5gKgQlHMh0B6pWSbxTsR1AtQjmVKNC0nOOHiA5RJOHxxTmh7ykXxhgH5vV8rgPQ3fqq OwRvQjqf7mFmf7u0eEX0i40wPe39kVe7JB/tDz32c0LOnKsSQ/1DSu532Y1iIENErENH AuDg+01Bn/FWbdNEGVBrCXSHHOk42ui3tYhBwEIJbzhs9M7T3x6m0WOUfPL0VE11xr4o Vs8w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1763359514; x=1763964314; 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=DEmhoiltjLHS40ZYX9LFFpPuqX6EosgccB89mXa6LAQ=; b=dxHNhB7AH24jr+BBhVtbYErrhEHDaT60jBJe43yxcDmoZLVdRhSp/qkfHgybkJ9vGs jAzCxGdtNt8+DIUA5YJdEsctQqELrUffmW30KkcbiZb17E51DJsYU6k1I1zi68TEsjxc da4JKl9Glx94mrD8V+FceMRbJWXMUwdyLCL3y0TtgP6Pmnb8n2kQVh7W40nXAsduAW0N Yal1trgwoZyPuHrgRxpaGtqKXZ+VeQqP1eg12BUvmGA1za4/lSLbqUAhHe8NAvIopV3/ 2s2ZiqEvwFxYxlJIPj4gwUwTrb6pnYy928U+xmnspVoPW5zl3M8ppRRpoVN4phJl1WZi gyVw== X-Forwarded-Encrypted: i=1; AJvYcCXiOtmP+VwO7yyAPrmQy0WNAe65HcFKj0JSCoG8JKJUuQP69WFIez2T+mavn1HVHN8CYyUgM2TMbhbwz79O@lists.postgresql.org X-Gm-Message-State: AOJu0YwbpAny2II6n699fbc9UAjh7TE1KSYS+47JsoznoPvECe0i2Nyj 1WO3/2iNJFtZCvqMad2YnAny1MI09LY8vwVp6eQR0QUTZ1zSALU/3YR8gvB4MexgNAdX1Z+X0tT z054fREIaYhDf4klXtZXVTY1fI4enAkg= X-Gm-Gg: ASbGncvz89LG360YNASLGwDkqKH30OYAkv2GHeNLEibxSM8D7209ukLmKQCy3AT24hH 9KEg3aGsEb2KJEPc+WzfUM3ojVEX90lDX/omxOzNo8ilGao2ac/Bp9yZQAN1qL0E4/FF3XxjDdG EshdP43Itjfdrw2s737l1Ml9Y7H6/XkndBwV6LtTyeydvc0DJ63IgEgR0nxB1mXtpD5PQd3qgSS QjKiYD8VKiMLvqmhzLuRjY4JIdacUGLle066xajMIRGwcNI8PyGwPlLb7Va0gQTnbvi9EnMPzit dGaUOt43/NML2Hp5aBD4bxyiQBhQkQ== X-Google-Smtp-Source: AGHT+IGRQT1Wv2hc9JnzBxW8UYEqFQS1QBIfdOK/nx/F0zHzoX1839ULd/u8kRwCW77buBwaeptuxNNBw2JxWDrVZjM= X-Received: by 2002:ac8:5854:0:b0:4ed:1bdd:6712 with SMTP id d75a77b69052e-4edf203d6a2mr152584651cf.16.1763359514065; Sun, 16 Nov 2025 22:05:14 -0800 (PST) MIME-Version: 1.0 References: In-Reply-To: From: Peter Smith Date: Mon, 17 Nov 2025 17:04:47 +1100 X-Gm-Features: AWmQ_bk2CdwiU8D9FxPpFqmzyUhns-nGrptiXHRE-VXhNnfQrHIDvYVCHfrWzgE Message-ID: Subject: Re: Skipping schema changes in publication To: Shlok Kyal Cc: vignesh C , Amit Kapila , "Zhijie Hou (Fujitsu)" , YeXiu <1518981153@qq.com>, Ian Lawrence Barwick , Bharath Rupireddy , PostgreSQL Hackers 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, Nov 11, 2025 at 9:22=E2=80=AFPM Shlok Kyal wrote: > > On Fri, 7 Nov 2025 at 09:34, Peter Smith wrote: > > > > Hi Shlok. > > > > This is a general comment about the content of these patches. > > > > IIUC, the v25* patches currently are currently arranged like this: > > > > 0001 > > - New command ALTER PUBLICATION pubname RESET; > > 0002 > > - Add new command: ALTER PUBLICATION pub_name ADD ALL TABLES; > > - Enhance existing CREATE and the new ALTER syntax for EXCEPT tables > > 0003 > > - Enhance existing CREATE and ALTER syntax for EXCEPT col_list > > > > ~~~ > > > > IMO it is a bug that the ALTER PUBLICATION pub_name ADD/SET ALL TABLES > > command does not already exist as a supported command. And, that is > > independent of anything else you are implementing here like RESET or > > EXCEPT. > > > > Therefore, I think that one should be 1st in your patchset; The EXCEPT > > stuff then just becomes enhancements to existing syntax, which would > > give a cleaner separation of logic. > > > > So, I am suggesting there should be 4 patches instead of 3. e.g. > > > > SUGGESTION > > 0001 - New command: ALTER PUBLICATION pub_name ADD/SET ALL TABLES; > > 0002 - New command: ALTER PUBLICATION pubname RESET; > > 0003 - Enhance existing CREATE/ALTER syntax for EXCEPT tables > > 0004 - Enhance existing CREATE/ALTER syntax for EXCEPT col_list > > > I read the previous conversation in the thread. And got an > understanding that RESET was introduced so that we can have a way to > remove 'EXCEPT TABLE' from a publication and after RESET we can use > 'ADD ALL TABLES [EXCEPT]' to alter the list of EXCEPT TABLE. So I > prefer to keep 'ALTER PUBLICATION .. RESET' as the first patch. > I think since 'ADD ALL TABLES' serves our current purpose. We can add > the syntax 'SET ALL TABLES' once 'ADD ALL TABLES' is in committed or > in committable shape. > Sure, you can defer the ALTER PUBLICATION ... SET ALL TABLES. However, I still think that 'ALTER PUBLICATION ... ADD ALL TABLES' is a self-contained new command that deserves to have its own *separate* patch and tests and docs, etc. IMO, patch 0002 is doing too much at once. It would be tidier (and smaller and easier to review, etc) if you split 0002 to implement the new 'ALTER PUBLICATION ... ADD ALL TABLES' separately, before expanding on that to implement the EXCEPT part: 'ALTER PUBLICATION ... ADD ALL TABLES [EXCEPT ...]'. =3D=3D=3D=3D=3D=3D Kind Regards, Peter Smith. Fujitsu Australia.