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.94.2) (envelope-from ) id 1tdkUu-009H9P-5t for pgsql-hackers@arkaria.postgresql.org; Fri, 31 Jan 2025 06:27:24 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.94.2) (envelope-from ) id 1tdkUs-00FxSZ-V8 for pgsql-hackers@arkaria.postgresql.org; Fri, 31 Jan 2025 06:27:22 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1tdkUs-00FxSR-KL for pgsql-hackers@lists.postgresql.org; Fri, 31 Jan 2025 06:27:22 +0000 Received: from mail-ej1-x62f.google.com ([2a00:1450:4864:20::62f]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from ) id 1tdkUp-002Q0E-2G for pgsql-hackers@postgresql.org; Fri, 31 Jan 2025 06:27:21 +0000 Received: by mail-ej1-x62f.google.com with SMTP id a640c23a62f3a-ab2e308a99bso301316366b.1 for ; Thu, 30 Jan 2025 22:27:19 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cybertec.at; s=google; t=1738304838; x=1738909638; darn=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=vPM95rug5vbwh+3aipqP+zXqnsf0F8k1dKfyCRfrmRg=; b=IglSpWP4yLhEHylAdy6zU7GIxpXfEBb5eMhHhDwXdl/s0ltroJGtubT3O4sfvdu6cP ndX0n916moHC8gF9X6eH6ALDSd/LFoj0tFtqdgVMJW7k6GYGBO6e+Mn/URROrbIWPnTx gCb6M908oNjCCF9HU6J4Xl5RjKsSCZRD4vsEj6aagtnlaRSlXIbjTqyhTbNopNAQIeio 7sWoQ9OZBcWh7oO4sp2rWw6/9YXoXUi54ipAX/FhKGvXUjgXTrhoZjLzSuoQ1GSXppZ6 pjCXlvIC1po896QN0+WeE+EOtlqiW+IQJhx+cIoTfQodB1dUFexT/RnWAguy4bp3t3Km e6dw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1738304838; x=1738909638; h=message-id:date:content-transfer-encoding:content-id:mime-version :comments:references:in-reply-to:subject:cc:to:from :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=vPM95rug5vbwh+3aipqP+zXqnsf0F8k1dKfyCRfrmRg=; b=l1EVHoN2D1INXUmKE2OtKYfJpSmxBF0lT/L+ae2tnik75+w07go8/FWs2vmha2Ze+U Q25VwWMpid17MEzpIJXYdNIMIkK9Y8J3N+Xr29UZRW2kWiVINwZ/02XX03cl86tlN6o2 w/bN1PcQWAow5sCKC+5UG4Xx9EZa2iYlpBQnBWrLbfQxW5Fm4ZWhm3NYTDHSgFOJMiaW iewldhbRzkvADSjS2heW7FFbiE4co/wEtM+ouocuFzirR0W68U1+l4e3MevUntnZNMPi iaHHRUVkC+wtFqo3rHFteSwIm0VnRHrEjjYzVrCPtgNJzpVhFli1pFK0RCzRvQRNQAAn HxTQ== X-Forwarded-Encrypted: i=1; AJvYcCWBxXlIsvAs9zOfRqDVEcAxyAwZFZ7RtFnMw8324FvDHi7gYAi3d8RNp0QTcUbzkyD+JyACwr+mUcs6Ec66@postgresql.org X-Gm-Message-State: AOJu0YxCDRb09Atm4R+Y6NxAnEQmkWmZIpH1x7H2i8aphPvaMfdAsS4m VKoB/I+6JyqvYsDtrx2WO65J0j+z2pDwRHzhpk0u+RM26CX3lXmguRZztWvReo0= X-Gm-Gg: ASbGncv7ULMUP0Lsx0kH039DnP0jcekoWVLAx3esyzgOTpqSNpaRS9K6yTTosEyNFdd wr6VXtayqLrG8GtCVlsU3us+SwWvF98305Vh3NwvFxHeg/F53QuYULbJc5RIpp+g+R7n3wBYKbi cIsa01pUZkJpsmumkbTSvEZ2FnCDXe98ToyC3Owib4825OSoScO7Olm+DOAdRT/a+9IQ13gHyi9 cCN5eSbWyF8e8Dn7vLEnrkkfQNTkqp+kVbQcu1w8eFhr3Nm8zpp5rPYF2JoDdWNUOfECF+R0IX3 JGDVyACGb8IftmUPZYY= X-Google-Smtp-Source: AGHT+IHTsL5fYPlUHc7tGbN9iOEVxW8Lb+ju0cwlO07Ip7KO2W4OvkX8+O9RlJvawHntDbX9iGAIAQ== X-Received: by 2002:a17:907:3e1e:b0:ab2:c0b0:3109 with SMTP id a640c23a62f3a-ab6f75b566cmr203124366b.21.1738304838394; Thu, 30 Jan 2025 22:27:18 -0800 (PST) Received: from antos (109-81-174-36.rct.o2.cz. [109.81.174.36]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ab701a55901sm25115566b.81.2025.01.30.22.27.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 30 Jan 2025 22:27:18 -0800 (PST) From: Antonin Houska To: Alvaro Herrera cc: Michael Banck , Junwang Zhao , Kirill Reshke , Pavel Stehule , Michael Paquier , PostgreSQL Hackers Subject: Re: why there is not VACUUM FULL CONCURRENTLY? In-reply-to: <202501301529.ejggbtao2skr@alvherre.pgsql> References: <202501301529.ejggbtao2skr@alvherre.pgsql> Comments: In-reply-to Alvaro Herrera message dated "Thu, 30 Jan 2025 16:29:35 +0100." 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: <10747.1738304870.1@antos> Content-Transfer-Encoding: quoted-printable Date: Fri, 31 Jan 2025 07:27:50 +0100 Message-ID: <10749.1738304870@antos> List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk Alvaro Herrera wrote: > On 2025-Jan-30, Michael Banck wrote: > = > > > I haven't addressed the problem of a new command yet - for that I'd = like to > > > see some sort of consensus, so that I do not have to do all the rela= ted > > > changes many times. > > = > > Well, looks like this patch-set is blocked on the bikeshedding part? > > = > > Somebody should call a shot here, then. > = > A bunch of people discussed this patch in today's developer meeting in > Brussels. There's pretty much a consensus on using the verb REPACK > CONCURRENTLY for this new command -- where unadorned REPACK would be > VACUUM FULL, and we'd have something like REPACK WITH INDEX or maybe > REPACK USING INDEX to take the CLUSTER place. Thanks for discussing the patch. I assume the patch should mark CLUSTER deprecated rather than removing it immediately. > For the record, there was an observation that 1) if logical decoding is > not enabled, REPACK CONCURRENTLY would not work, and 2) that sites being > forced to enable logical decoding (even if transiently) to allow this, > might take a considerable performance hit, and that we shouldn't > entangle our features in that way. I don't have an opinion on these > things at this point; knowing more about exactly what the performance > impact is would be good. Regarding logical decoding, the conversation > continued that maybe it'd be good if the feature can be automatically > enabled transiently for that particular table for as long as needed, and > disabled afterwards. But like with the previous concern, I don't really > have an opinion without understanding it more deeply. Enabling the logical decoding transiently makes sense to me. I also agree that tables not being REPACKed should be treated as not being logically decoded, i.e. the logical decoding specific information should n= ot be written to WAL for them. Neither time nor energy should be wasted :-) I'll try to implement these requirements the next version. -- = Antonin Houska Web: https://www.cybertec-postgresql.com