Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1pXQx2-0004Sc-Cp for pgsql-hackers@arkaria.postgresql.org; Wed, 01 Mar 2023 18:13:16 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1pXQx1-0001DR-9V for pgsql-hackers@arkaria.postgresql.org; Wed, 01 Mar 2023 18:13:15 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1pXQtw-0000II-Fi for pgsql-hackers@lists.postgresql.org; Wed, 01 Mar 2023 18:10:05 +0000 Received: from new4-smtp.messagingengine.com ([66.111.4.230]) by makus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1pXQtt-0007kp-ED for pgsql-hackers@postgresql.org; Wed, 01 Mar 2023 18:10:03 +0000 Received: from compute3.internal (compute3.nyi.internal [10.202.2.43]) by mailnew.nyi.internal (Postfix) with ESMTP id 09F535820BF; Wed, 1 Mar 2023 13:09:57 -0500 (EST) Received: from mailfrontend1 ([10.202.2.162]) by compute3.internal (MEProxy); Wed, 01 Mar 2023 13:09:57 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:date:date:feedback-id:feedback-id:from:from :in-reply-to:in-reply-to:message-id:mime-version:reply-to:sender :subject:subject:to:to:x-me-proxy:x-me-proxy:x-me-sender :x-me-sender:x-sasl-enc; s=fm1; t=1677694197; x=1677701397; bh=n zRWve+GsRucPvSfHIklYLo8F5dslXGy09PsEyzt32g=; b=UWzsHIWHle6YF7dgW go31EUnOXzkRZK4HR15KwJrvQordDjdR1EWrEfnFxhq8YNlbLxs7znnDDgyyTJB8 4fykbtzJ0+Xe84TcwBkt35BNpAy4L1jiRXLyepxTufQeiU9iwANLT5OacxknC43t 7qDNXLsdZW8MIlz/KBbJ3ESElhMfBo5dddnu9F6G/AF8AbGYcKI2I3TDr3Z6NSL6 96kY4T+uvCrMKmW4O7C1XEI7VLXdiI2SBvrt80HeqgoYyMXKGQDWIiGAQmpudmo/ S5+jlgco1XMSdkCNVW/5t3NeAHWHIU4rDqfvpHPyYOKia3PJUj3zPF2VEPOlkwu7 8mZAA== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrudelhedguddtudcutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmd enucfjughrpeffhffvvefukfggtggugfgjsehtkeertddttdejnecuhfhrohhmpeetlhhv rghrohcujfgvrhhrvghrrgcuoegrlhhvhhgvrhhrvgesrghlvhhhrdhnohdqihhprdhorh hgqeenucggtffrrghtthgvrhhnpedvkedtffduffdtffffheffhfejjefhgfeiueeukeej keffgfdufffhudffffeuveenucffohhmrghinhepvghnthgvrhhprhhishgvuggsrdgtoh hmnecuvehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehmrghilhhfrhhomheprghl vhhhvghrrhgvsegrlhhvhhdrnhhoqdhiphdrohhrgh X-ME-Proxy: Feedback-ID: ia2694551:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Wed, 1 Mar 2023 13:09:56 -0500 (EST) Received: by perhan.alvh.no-ip.org (Postfix, from userid 1000) id EE61167; Wed, 1 Mar 2023 19:09:53 +0100 (CET) Date: Wed, 1 Mar 2023 19:09:53 +0100 From: Alvaro Herrera To: Michael Paquier Cc: Nathan Bossart , vignesh C , pgsql-hackers@postgresql.org Subject: Re: add PROCESS_MAIN to VACUUM Message-ID: <20230301180953.b64tekcnh43xtzqn@alvherre.pgsql> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On 2023-Mar-01, Michael Paquier wrote: > +-- PROCESS_MAIN option > +VACUUM (PROCESS_MAIN FALSE) vactst; > +VACUUM (PROCESS_MAIN FALSE, PROCESS_TOAST FALSE) vactst; > +VACUUM (PROCESS_MAIN FALSE, FULL) vactst; > > Thinking a bit here. This set of tests does not make sure that the > main relation and/or the toast relation have been actually processed. > pg_stat_user_tables does not track what's happening on the toast > relations. So... What about adding some tests in 100_vacuumdb.pl > that rely on vacuumdb --verbose and check the logs produced? We > should make sure that the toast or the main relation are processed, > by tracking, for example, logs like vacuuming "schema.table". When > FULL is involved, we may want to track the changes on relfilenodes > depending on what's wanted. Maybe instead of reading the log, read values from pg_stat_all_tables. -- Álvaro Herrera Breisgau, Deutschland — https://www.EnterpriseDB.com/ "Uno puede defenderse de los ataques; contra los elogios se esta indefenso"