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 1u0eI1-0058WA-Kb for pgsql-hackers@arkaria.postgresql.org; Fri, 04 Apr 2025 10:28:45 +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 1u0eHz-00GH2T-Gm for pgsql-hackers@arkaria.postgresql.org; Fri, 04 Apr 2025 10:28:43 +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 1u0eHz-00GH2I-3t for pgsql-hackers@lists.postgresql.org; Fri, 04 Apr 2025 10:28:43 +0000 Received: from mail-wm1-x329.google.com ([2a00:1450:4864:20::329]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from ) id 1u0eHw-002tpZ-0d for pgsql-hackers@postgresql.org; Fri, 04 Apr 2025 10:28:41 +0000 Received: by mail-wm1-x329.google.com with SMTP id 5b1f17b1804b1-43cf257158fso12713345e9.2 for ; Fri, 04 Apr 2025 03:28:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cybertec.at; s=google; t=1743762518; x=1744367318; darn=postgresql.org; h=message-id:date:content-id:mime-version:comments:references :in-reply-to:subject:cc:to:from:from:to:cc:subject:date:message-id :reply-to; bh=gdyJU6/hfowdVlmm0nHL7GYkvjlyrXBq6okz3zy5OnE=; b=X0tm7O4uTODZInE6pFtmUWr0Vdt9+IHtRj0KW5yrUYa7Ne3xAH5U43F8Tof0e8+p9/ zSVkjsn5V9Cc+zoYP1sVxZpbHTFZy1elDcIpyaiLE72QRUdZu7URsYqO8VFLp9ueRj6V CG6xb7V5RZnjXbNvsP35IKmh0qnXJZr04w/l0anokumXuw1h2bdndHOXVoSZvMx+JZdl ajD3/Cop0IxVg9ISmbh6zAvE/5NaNs4P4aQVlbWlv6yz+pJEzIrcF8DLi4imfxJPWCuA jdgtBtknCK/cgF8WiZ2ZpS1guJf9ew6xWaLIvgUeG9+Jt8wVsh1roaA8Wt8sAgvbvNe9 +NlA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1743762518; x=1744367318; h=message-id:date: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=gdyJU6/hfowdVlmm0nHL7GYkvjlyrXBq6okz3zy5OnE=; b=t2vudK5JdyVwenxazl3adP4DWL+8VZLG3SFLEW8pXWHGYhIRRtj8SpTswLDH+x7wQC mxbRBOocWkiF9EEX7E6ITWS0hjhOtg1wzCgjUWm8jR5iaizFiPeAN7ohMgdp9V+RZbjd X5qq+wmvu790SFPBYupkCAaMA/T/t7zK7REFlf++reFttK/tD70Ylkr2utC8OIPYmezF /bCpK5qizbbhBGm0z9bU9ZEq1wQYiCi4mUEg/Qv2UennQAjad5t9nT+Xm3Hbq0wlx98Z vJ9kpLMotYedw3UsUZxNAPlyFP0yHhb+HlrO+87MHPl7xyalo14S+zju2xqfyvyTB9ZM JFWg== X-Forwarded-Encrypted: i=1; AJvYcCVEyj3HqwC4Y4F6Tmdu0lbTtsn3ZvZHtvK7yplQl9vr7wyBqq4TcMdkFvnopwcION3P4mJUCHmXzHzx83qF@postgresql.org X-Gm-Message-State: AOJu0YzQTwYnJ77vIJDu85adZsN2UYjNWbbL1hlS+0bAUO16mncvZt5W RToa6R4vjGiRuk8NIHa5Y7Cr8cmT4TLtOKp8q0kVeIcoeBv5UgN15z0LTlM1+cg= X-Gm-Gg: ASbGncuWDfMnYMHyeA7rGDUwpadczejU4kEQIEwsEH8a3SeTHurGmZazg1BvpwUQGap C2BJaC4FeRl8zEKn8YbVpVvSrVGXAvp2wlU0EHVUoCOysiwz8qDf+T4+vPf53fUK6neRfoupKRT PRPOkJIRxprYLHpuT+u/LkjG6zBIKgV63QVFbm3ljM2mV7mZaAaSFRcqJC4CuT9y3zywQN5/FlB HzVvHdGREfCBhyaDeuliob51er0doeN3FXCjL66KDUd4aHq6oL5qgcdbIL2fQAE/yyJ0mn69BT3 mYoVNSrU7aacQa6EZPzmdBzL0qdYCtl09m+xGi9cLxrrlKr0oI1vLsci X-Google-Smtp-Source: AGHT+IHD04wGum+13jmmUPKuougbk7S5f5qpx3l2KwLJfBIw5XQURqX6dg7B6IB2xNi1OqSHtVmyOw== X-Received: by 2002:a05:600c:1d16:b0:43d:fa58:8377 with SMTP id 5b1f17b1804b1-43ecfa418a0mr20373125e9.32.1743762517753; Fri, 04 Apr 2025 03:28:37 -0700 (PDT) Received: from localhost (109-81-174-36.rct.o2.cz. [109.81.174.36]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-43ec34bf258sm41804825e9.23.2025.04.04.03.28.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 04 Apr 2025 03:28:37 -0700 (PDT) From: Antonin Houska To: Alvaro Herrera cc: Marcos Pegoraro , Michael Banck , Junwang Zhao , Kirill Reshke , Pavel Stehule , Michael Paquier , PostgreSQL Hackers Subject: Re: why there is not VACUUM FULL CONCURRENTLY? In-reply-to: <202504040733.ysuy5gad55md@alvherre.pgsql> References: <202504040733.ysuy5gad55md@alvherre.pgsql> Comments: In-reply-to Alvaro Herrera message dated "Fri, 04 Apr 2025 09:33:54 +0200." 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: <13027.1743762516.1@localhost> Date: Fri, 04 Apr 2025 12:28:36 +0200 Message-ID: <13028.1743762516@localhost> List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk Alvaro Herrera wrote: > On 2025-Apr-01, Antonin Houska wrote: > > > Besides that, it occurred to me that 0005 ("Preserve visibility > > information of the concurrent data changes.") will probably introduce > > significant overhead. The problem is that the table we're repacking is > > treated like a catalog, for reorderbuffer.c to generate snapshots that > > we need to replay UPDATE / DELETE commands on the new table. > > > > contrib/test_decoding can be used to demonstrate the difference > > between ordinary and catalog tables: > > > > [.. ordinary ..] > > Execution Time: 3521.190 ms > > [.. catalog ..] > > Execution Time: 6561.634 ms > > Significant indeed. Thinking about the scenarios in which I envision > people using REPACK CONCURRENTLY (mostly, cases where very large tables > have accumulated considerable amounts of bloat) and considering the size > of the patch, I think the case for treating it as concurrent-safe is not > credible, at least not at this stage -- not only because of this > performance impact, but also because of the additional code complexity, > which I'm really doubtful we can address at this stage. I would suggest > to put that patch aside for now, maybe with a doc warning that > "repacking a table would cause visibility information to be lost"; and > then address that aspect later on, after this feature has gone through > some battle-hardening. ok, I'll adjust the patch set. -- Antonin Houska Web: https://www.cybertec-postgresql.com