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 1w5uUY-003kRW-1f for pgsql-hackers@arkaria.postgresql.org; Thu, 26 Mar 2026 23:51:58 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1w5uUU-006aKh-2G for pgsql-hackers@arkaria.postgresql.org; Thu, 26 Mar 2026 23:51:55 +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 1w5uUU-006aKZ-1D for pgsql-hackers@lists.postgresql.org; Thu, 26 Mar 2026 23:51:54 +0000 Received: from mail-lf1-x129.google.com ([2a00:1450:4864:20::129]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1w5uUR-00000001NYF-2qQ4 for pgsql-hackers@lists.postgresql.org; Thu, 26 Mar 2026 23:51:54 +0000 Received: by mail-lf1-x129.google.com with SMTP id 2adb3069b0e04-5a2a75393e2so547020e87.2 for ; Thu, 26 Mar 2026 16:51:52 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1774569111; cv=none; d=google.com; s=arc-20240605; b=haPpI/9Yt/crmFOs1p6asfUPNHN0ZxyF6+u5KrDKWJBFgsGPkNTxvuEZdxLf8m4z/l 39KiDwGS2jSGasGvHvqf1m6sqJ2P++Ox2ntx60N0g7HHPCo+N3A20VWlQHmQIQ90QWI1 pivlkdmh60BJq7MbTErdDetvNhpSJpWtGj7AesqctoJNfkNbO/pVn8C52lrxqJPayDSA A4F/kO5w6eOvFoI1muLSD9PU4bOroVmD6hCjpBUnB/LLxDUNLxut/HN2+GJ948d45GRO 5q7artE5JJGvtWWzKPMEp8DCDrEwz6hYzn8w1sx+U9imG607mFMpigrSrB+uufnwQ5SF zlVg== 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=xATU4gcNfqc0KzbnxjIZqi0iTiv5qCXS1oZx/VBRfVQ=; fh=RDQ+ILsBbnbNZj/T5D3VkpIU9oU7qgSjq7q7x6QgNPk=; b=EuAfj6Z7Ifc8q7LZSoKMc/eNJ34vHoli4atMouFKEtPXwQHseensUb59xxEHj7zQ8n UzgSTQ+ZaWVC99osZvEno7XGHEEAdqGXfaxKL7cb6MvwQYWqcXgg1/79pkhGnJAB6uzW S5Dy0zGfFFRPXC7GVT+1wHjRB74R3L4wdCQeiPCMbxYn1uw+Gbt2R+RgYFt8M40iq8eV Z2GjmkjM0Kq1GHZvb/n1AvbgBksJ2PN7XtYHZHsUJiG+5BSC4jtN6LboS7naR0oquekh bESt0QzFph8p+/Slp7KmSfSy+VUQi4Lk9ynNZmwOplSQh0eluhU7fkZkbAO229Wbhyfu QnGQ==; 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=1774569111; x=1775173911; 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=xATU4gcNfqc0KzbnxjIZqi0iTiv5qCXS1oZx/VBRfVQ=; b=nZqouKOkEtbR6Ne3LY5wvWrTjEPMLZtrdoId18CO8Bo6I7yiUzYxO5Xyh7k4Gk8LKz aQMFxKugUB2rI9BzRW3f7ckz2HlXnX3EQztM7sMaRC77Lsi66XfdZiNe9PwhnRFZgKE+ f7hx0nLMahPnmPvxUXV/aIyNN5D2iwcqLiLOUa0NlnsEwRw4ffpt0aKfegx88tX49AOA 1wFyPmmInIkIiDjLSy9nGJOXNKbV6ixmC49T5r6axXhF2RFTJd/Q1BPH4zXSTA28Vx+5 chtK8t1dcJJwMtKcT3bRjcXux7jmmZkkzuBTOKdB2PLCnbokf5C0AVlsi+1SUvFIt7rd akaA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1774569111; x=1775173911; 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=xATU4gcNfqc0KzbnxjIZqi0iTiv5qCXS1oZx/VBRfVQ=; b=kwNuSZQpyIOk32UfFsxNnrXHhpc/VOoPhEYvyvKYVyDWMzq8npp3MsRYGR0m6wk9c4 FGnj9edjPGbqCCa1Y4qppmTvmC5FbSpj+UzfL25GJ/eYUUo8KC/PEZbRUc1slHDOrTaR gxhzTAEhtBKJFksdkPWFG4JKAi3Ci0J9IJ+4mNfAV0tLcwUd8zXIhHvhq7TPtzDMoQVs fhej6Mzlzv10kgmTJ5y9bHsqmX/mjZ9JMWuv14JppZXCSTalaGS0++jM5rJO4wgFlG0c K6FabhMiSMmjzfzN8ANeeeflJomceUxstGCaEGUFHw2GdA2H8uRiLgzUacfzgtr0qMQq J7uw== X-Forwarded-Encrypted: i=1; AJvYcCW1pDZK5wWWvvk68rGImy4aByulPOJKBO00LJ5BavYCYAjbIM5FueKN/fuTMwBUoPzykHbaEDavG2J49CZa@lists.postgresql.org X-Gm-Message-State: AOJu0YwghkxVRd2YO9tLfxA69Y3wnttSUHMFIvhjW/vdvJCChDrFL+SI Jn42qquP9DoD2zsBgWgwWj/bzUypCAo6aH/VnxUOEnIAJlZcDu3cOQ4+IqZdBfwW/Uc4JVVhKA/ hqSgnL3LOgYfeogRsVs+dukGpzF4slgs= X-Gm-Gg: ATEYQzzZAVBk50+d96nwlRWDPiBkmsTemd5xWH08mBfrNfpjsuGnrfwGTwv3ZlAgLpu ACFS1h1Ka1WzQcSygYZ86I4fa9KzYhq2lvxTJJEAfwTLfltV7v+sLFmOTgTY5KIu9lJYiMnhfZR zMQEaRtb9R6RxVZ94wiqty78o1MXWYuZFyboijic9nVn4eA6x0A6CAzGh/yglCQa6un0ql5fz1p ZJeixwp9rImpaRDuEUUEKi4JCXpt61CrXwHc5PuwTbJjxAHJDlQ3fTQcnpWmX3UWNdJBo7Q+tEX mYFQRi6z X-Received: by 2002:a05:6512:4022:b0:5a1:15bd:b057 with SMTP id 2adb3069b0e04-5a2ab59be24mr150730e87.0.1774569111069; Thu, 26 Mar 2026 16:51:51 -0700 (PDT) MIME-Version: 1.0 References: <0c28fbd1-3320-4e9b-815c-6d62753aa063@wi3ck.info> In-Reply-To: From: Masahiko Sawada Date: Thu, 26 Mar 2026 16:51:14 -0700 X-Gm-Features: AQROBzA_wJsYNHfXsfh_DH0dHgVhCCNhlfh-JQgX1HK7VH5kpJQtWPBcPTSKSQI Message-ID: Subject: Re: Initial COPY of Logical Replication is too slow To: Amit Kapila Cc: Jan Wieck , pgsql-hackers@lists.postgresql.org 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 Thu, Mar 26, 2026 at 3:44=E2=80=AFAM Amit Kapila wrote: > > On Wed, Mar 25, 2026 at 10:37=E2=80=AFAM Masahiko Sawada wrote: > > > > I figured out that the join with pg_publication works as a filter; > > non-existence publication names are not passed to the function. If we > > pass the list of publication names to the new function signature, > > while we can simplify the patch and avoid a join, we would change the > > existing function behavior so that it ignores non-existence > > publications. > > > > I've attached the updated patch. The 0001 patch just incorporated the > > review comments so far, and the 0002 patch is a draft change for the > > above idea. Since pg_get_publication_tables(VARIADIC text) is not a > > documented function, I think we can accept small behavior changes. So > > I'm going to go with this direction. > > > > What behaviour change are you referring to? In general, the direction > appears right to me. When passing a non-existent publication name, the current behavior raises an error while the new behavior does nothing (i.e., the difference is calling GetPublicationByName() with missing_ok =3D true or false). Regards, --=20 Masahiko Sawada Amazon Web Services: https://aws.amazon.com