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 1vRDMf-009hgy-31 for pgsql-hackers@arkaria.postgresql.org; Thu, 04 Dec 2025 17:43:39 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1vRDMd-003kPZ-2Y for pgsql-hackers@arkaria.postgresql.org; Thu, 04 Dec 2025 17:43:36 +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 1vRDMd-003kPP-09 for pgsql-hackers@lists.postgresql.org; Thu, 04 Dec 2025 17:43:35 +0000 Received: from mail-ej1-x62b.google.com ([2a00:1450:4864:20::62b]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from ) id 1vRDMZ-0038js-2d for pgsql-hackers@lists.postgresql.org; Thu, 04 Dec 2025 17:43:35 +0000 Received: by mail-ej1-x62b.google.com with SMTP id a640c23a62f3a-b737502f77bso166256166b.2 for ; Thu, 04 Dec 2025 09:43:31 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cybertec.at; s=google; t=1764870209; x=1765475009; darn=lists.postgresql.org; h=message-id:date:mime-version:comments:references:in-reply-to :subject:cc:to:from:from:to:cc:subject:date:message-id:reply-to; bh=o/8KlvVKL0BvqcX+xbOynNRIy0tNHTcEyErzFb0WRlA=; b=joY7F0VuHY/6YKagGrvTsbXlhnRXRvN9PEfhSlLgBlCuBlUpe8CZc5hbb6Sj6xIO/1 56qmX82PgUtHLrisfAEH1QzVv5YVVHsfM8sMFO21lVuHHIveroJ5LswNZ+bu+J0LEMVI q3mr9mr/jtcyMqvPdzNc2Agj9gSEBYXVXD82t5BUo2d++sCrYN8IKLJ0vCDUJPwY4BSz XZl8ipP7fLeP2Eo3YHdU7Dx0KtgnzD87oi+kvdFAHZt+tSfB1Z1YhQ2d4r/+BvkAAVnt 7lJe/dnVV8kchFqjBf87JI4Mhmp5EFj59wq91WUSdRxi5wuCGMA1+mag+cG35eADijvM z0xw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764870209; x=1765475009; h=message-id:date: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=o/8KlvVKL0BvqcX+xbOynNRIy0tNHTcEyErzFb0WRlA=; b=s8/0q5ev5kC0SLwtzzr48I6ffis8j6WKYqOfuvS3YrT7fp3aWF0+pBs5GiAFBaUGRb WOC/ClTcZMbZPIe1qBbsEeH/NWdezfdGY15wrgfHAuvBcMKN1WUCTz+Opq4WKYxMpREs IQLEE/qTdKyZsfOpj4OCnr7n6tYtbvnKRmcRcX4yAKMYjzcpshP+IH1GlXjugbX30ciQ Zetkr3UDIiTqhnq/j5tJz6adr/kMeyrlBiuZo+/k8YiRFK0ARzeYR63ByAoUxnnjwNdP 90RdzBYSG2CwVMxF+kLQDRWvQ5awm+Kl/y38CUNa0RKAMZRu8AGzGR71Bi+2vu8F/jpV ODSQ== X-Gm-Message-State: AOJu0Yw+vlRGOruNlqEfYAMXAEQSzDBr3+3Hj6M2CpRPVmSSd1TARI+g 9QplVAa6/+jpODT78NREY2S2yQDmVhesuVb2O1B07mJidsZFgOjHpz/tVeu/ZPvesdb6/AkDD/T ZGo8N X-Gm-Gg: ASbGncs6FTUKGkteg0xdn9Pz1qpd2TNjeZioKjrkO7fYFBDCmf2ifXerR7ViABXd5Wb +HIBNlrInJ9CA/DDHEFRlFXHBuX8pg4O5S2sq5gKaBmWwxfVXnDLpTlg0fJsd+lQxY9seW3s5ga S0JMK8VaNhnOFzXpDCTC1DJ64hm2E5v7kNWY+WKvmysmxpO2hfBUnpox2U6JBcNsa9aXUGwHOeC UGPdeZb6A0xdNz0zGezphP6xhHM5g40h15srWk8j3VHky+UG4DsGnYW5mM7VdQC5+vPAjl/2CcI 4qYyAF4r7flJ4ArUiCN48FGaVDSHi9ABIudg1Ob+032lQPJYpb7zl0JStj/O2KhS9KPKaCVKzi5 hkAElHWubUbJuK0l/CPst74LXM0obDsKyvy4kj+8U6OmKQQo40kh1B4m/dqK47VGf+fe6mUZnCx vF9XajMyPjWHHiHOl/aKPxLxtY X-Google-Smtp-Source: AGHT+IFvSh6LyWD3AOoYDgYWuJ6Oonu1JIh56cDnxR9ul5zQu/XpgO02HETDF8n2RlzdePkJo/bo/Q== X-Received: by 2002:a17:907:96a9:b0:b72:77c7:d8ad with SMTP id a640c23a62f3a-b79ec67dc11mr319523766b.35.1764870209023; Thu, 04 Dec 2025 09:43:29 -0800 (PST) Received: from localhost (109-81-168-246.rct.o2.cz. [109.81.168.246]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-b79fab22ae8sm103826066b.4.2025.12.04.09.43.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 04 Dec 2025 09:43:28 -0800 (PST) From: Antonin Houska To: Alvaro Herrera cc: Pg Hackers , Mihail Nikalayeu , Robert Treat Subject: Re: Adding REPACK [concurrently] In-reply-to: <202510301734.pj4uds3mqxx4@alvherre.pgsql> References: <202510301734.pj4uds3mqxx4@alvherre.pgsql> Comments: In-reply-to Alvaro Herrera message dated "Fri, 31 Oct 2025 00:17:05 +0100." X-Mailer: MH-E 8.6+git; nmh 1.8; GNU Emacs 28.3 MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" Date: Thu, 04 Dec 2025 18:43:27 +0100 Message-ID: <116433.1764870207@localhost> List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --=-=-= Content-Type: text/plain Alvaro Herrera wrote: > Here's a new installment of this series, v25, including the CONCURRENTLY > part, which required some conflict fixes on top of the much-changed > v24-0001 patch. v26 attached here. It's been rebased and reflects most of the feedback. A few incomplete items are marked as TBD here [1] and [2] is another thing that needs discussion. Besides that, I've done some refactoring in 0004: 1) move more code to setup_logical_decoding(), and 2) reduced the number of arguments of process_concurrent_changes() by using a new structure. Both these changes are a preparation for a background worker that will perform the logical decoding, but seem to be useful as such. (I have a PoC of the worker but will post it later, it doesn't seem to be the priority for now.) I've also removed support for decoding TRUNCATE because I realized that this command uses AccessExclusiveLock, so it cannot be executed on a table that REPACK (CONCURRENTLY) is just processing. Also I tried to fix TAB completion in psql. > I have not yet addressed Robert Treat's feedback from October 12th. These are still pending. [1] https://www.postgresql.org/message-id/23631.1764855372%40localhost [2] https://www.postgresql.org/message-id/CAJSLCQ2_jX8WmNOC4eu6hL5QyNHceOkgPbGhKHFw2X5onVEKDQ%40mail.gmail.com -- Antonin Houska Web: https://www.cybertec-postgresql.com --=-=-= Content-Type: text/x-diff; charset=utf-8 Content-Disposition: attachment; filename=v26-0001-Add-REPACK-command.patch Content-Transfer-Encoding: quoted-printable