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 1wA8Va-00264E-32 for pgsql-hackers@arkaria.postgresql.org; Tue, 07 Apr 2026 15:38:31 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1wA8VZ-0018PU-07 for pgsql-hackers@arkaria.postgresql.org; Tue, 07 Apr 2026 15:38:29 +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 1wA8VY-0018PM-2K for pgsql-hackers@lists.postgresql.org; Tue, 07 Apr 2026 15:38:29 +0000 Received: from mail-wm1-x329.google.com ([2a00:1450:4864:20::329]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1wA8VW-000000018LL-230U for pgsql-hackers@lists.postgresql.org; Tue, 07 Apr 2026 15:38:28 +0000 Received: by mail-wm1-x329.google.com with SMTP id 5b1f17b1804b1-48897fd88ebso38661865e9.2 for ; Tue, 07 Apr 2026 08:38:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cybertec.at; s=google; t=1775576306; x=1776181106; darn=lists.postgresql.org; h=message-id:date:content-transfer-encoding:content-id:mime-version :comments:references:in-reply-to:subject:cc:to:from:from:to:cc :subject:date:message-id:reply-to; bh=8syHlflP2C0trWjEVNcOAwPauydCYDLbcXa7IEWKTUY=; b=bzb/yQKnpk3RsA0WyC9ybwkvWfG3wV3mGRrPgUkJLw2UsKJ5m9DRbI8xjvOJ/F/tuR bKdy3YLLctZgHgmnmucsPNrAxYU3bgLH5wXvJt2qdAjTzF71CNJHYNZJVy8b8JIVw/2v dSCi48ZP3OSjzmsVAh2trKha5Xxc/4eDbSb2kkzxgrWUiHJOeFJRTzYtaCyFWo+ap7BX UqyUO8GeD/B2YVkARsXEp0oZUnmfOtpfIuZ+SkON8UhKjeuX4k38+F4iIL4jWfVCNxYf aiWF4R63kFh6iEJMjG0ltNGLXqkk7kXVCbPlQsJ/3WTJWbRGMonw8HHNPjn2wo3sNvnF 6SrA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775576306; x=1776181106; h=message-id:date:content-transfer-encoding:content-id:mime-version :comments:references:in-reply-to:subject:cc:to:from:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=8syHlflP2C0trWjEVNcOAwPauydCYDLbcXa7IEWKTUY=; b=DomBD2odgd5kMbsGoHX1ZnfALKJLb9YEHeoHb0qpKfbcoQV3WJSiRyIWToHTlM4DQa bLR8TBdzagC7CUepfWdFohZC4u3FGLYHMYq877YRg2V7COGctPXvzNMLVyEw3kLQ9USq ruqFOYcKjNRePxUFUDRpnBFdn5L6DXzbDuN1kzb11fkmXyEdq01JwJWP84YyfWb6LQn4 eTX9n/UnnWdLuMZCjFWLjTBSgaHPVFClqfNJ51alRvH7SNeXNPLuaea6VYEjwJgfwy83 RMIJf1ATsTpZSZ7oGqQGXXswR+Jh5EQAcIrlyI7Dh67mw+mkBRMmJGCtPYzpd/xUK/ts lClQ== X-Forwarded-Encrypted: i=1; AJvYcCUnSJtcAAU3upJR3V7z2GcRE4jXfdfSXLqoM4G4buVQyG1Pu7aVbLKz1ojymbyVrJ5ADP/f4AZWSnfcdnbK@lists.postgresql.org X-Gm-Message-State: AOJu0YzA2dyoOJDruTYlZdtfBhFa/SG1XIMkXtO7b55YU7PqdauRer2x 9Ozt9gEK5cmRmRHBkYLPLjLtCqVMMmWbebapns+ap2U/jMSYfqcowKKhIql7EBO6zgs= X-Gm-Gg: AeBDieueaD0JtTnYRdnqC65RuO8H0BO8olLdjuXP3es7nxhXjCUmZtwmhUM3qMUySaz g7+N38g3VEm/ZOVn4pWKp1jvesW0xnev8nHSGT2wb5VcLtHP74SuKzaSNXLXbw2gkpPJpL/oIfg hDpp70V1Sf+qKt0hq2iyaW9GigNcO78sRvR3U94HFW8feiv1W4vqmcKiXxKYPE9i1J/V/mg9z2G 7fT1rfJeSCSM6cEu7DnnBjzBkZX+3AXqoElb4ggVrBgweVLrtFCcgRhjH9rIwf8Ms7BS64+aQ6I gd5ttH3fDSCK3PHWaWKTJ/30FKDeo9f5L+2jctxcVPdj2C4dHBoiKnFVIFNH0pooiFNXVKG0df0 UzIszonubkvZoRbSGzBkrPqd/iQjADsOoVhUFvGMp9j1FERpmWog1EkM7utbOfs0Mu/cReroUcR N86Mb7RZWem+doNygiALcQS8J3XIDj3qtvOmGUf/leFJzJQQA= X-Received: by 2002:a05:600c:c8d:b0:486:ffa3:594 with SMTP id 5b1f17b1804b1-488997a6883mr237187985e9.23.1775576305553; Tue, 07 Apr 2026 08:38:25 -0700 (PDT) Received: from localhost (109-81-168-142.rct.o2.cz. [109.81.168.142]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-488c4e930c7sm572405e9.6.2026.04.07.08.38.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 07 Apr 2026 08:38:25 -0700 (PDT) From: Antonin Houska To: Andres Freund cc: Alvaro Herrera , Amit Kapila , Mihail Nikalayeu , Srinath Reddy Sadipiralla , Matthias van de Meent , Pg Hackers , Robert Treat Subject: Re: Adding REPACK [concurrently] In-reply-to: References: <202604071230.b5axxf3qna3m@alvherre.pgsql> Comments: In-reply-to Andres Freund message dated "Tue, 07 Apr 2026 10:10:34 -0400." X-Mailer: MH-E 8.6+git; nmh 1.8; GNU Emacs 28.3 MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-ID: <227676.1775576304.1@localhost> Content-Transfer-Encoding: quoted-printable Date: Tue, 07 Apr 2026 17:38:24 +0200 Message-ID: <227677.1775576304@localhost> List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk Andres Freund wrote: > On 2026-04-07 14:33:50 +0200, Alvaro Herrera wrote: > > On 2026-Apr-07, Amit Kapila wrote: > > = > > > I have a question based on 0001's commit message: "This patch adds a > > > new option to logical replication output plugin, to declare that it > > > does not use shared catalogs (i.e. catalogs that can be changed by > > > transactions running in other databases in the cluster).". In which > > > cases, currently plugin needs to access multi-database transactions = or > > > transactions that need to access shared catalogs and on what basis a > > > plugin can decide that the changes it requires won't need any such > > > access. > > = > > I don't think any plugin needs "multi-database" access as such, but > > needing access to shared catalogs is likely normal. Repack knows it > > won't access any shared catalogs, so it can set the flag at ease. > > = > > There's a cross-check added in the commit that tests for access to > > shared catalogs if the flag is set to false. I guess you could set it > > to false and see what breaks :-) > = > I think this has a quite high chance of indirect breakages. You just nee= d some > cache invalidation processing / building accessing shared catalogs to vi= olate > the rule, and whether that happens very heavily depends on what cache en= tries > are present and whether something registers relcache callbacks or such. > = > This can be triggered by an output function during logical decoding or s= uch, > so you don't really have control over it. The REPACK plugin only deforms tuples and writes them to a file, so I thin= k that things like this should not happen. However, I admit that an option t= hat allows the plugin developer to declare "I don't need shared catalogs" may = be considered deceptive. -- = Antonin Houska Web: https://www.cybertec-postgresql.com