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 1slQPA-007bvk-7s for pgsql-general@arkaria.postgresql.org; Tue, 03 Sep 2024 10:04:57 +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 1slQP8-009wkx-0J for pgsql-general@arkaria.postgresql.org; Tue, 03 Sep 2024 10:04:54 +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 1slQP7-009wkp-A8 for pgsql-general@lists.postgresql.org; Tue, 03 Sep 2024 10:04:53 +0000 Received: from meesny.iki.fi ([195.140.195.201]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1slQP3-000Qqi-NZ for pgsql-general@lists.postgresql.org; Tue, 03 Sep 2024 10:04:51 +0000 Received: from [192.168.1.110] (dsl-hkibng22-54f8db-125.dhcp.inet.fi [84.248.219.125]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: hlinnaka) by meesny.iki.fi (Postfix) with ESMTPSA id 4Wyh7J3nkFzyQL; Tue, 3 Sep 2024 13:04:44 +0300 (EEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=iki.fi; s=meesny; t=1725357885; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=Na6R/leiFmljVVmbqHZ8uUCzTWIZYjoapc9sSTz+7N0=; b=jX/z9J60WEdG0D+jDKmr9Ocxye47C/AGwo5lVTyynE8ZUdi6nogOcbeCvDP8S8mHOm3So/ e3nQwLSHzmEvr2NO0fh2Yw5HPostH9mddKrzs7Il7zuFgK1C7LxTvopB8lzW6OhZtuguKR yoGkLeB4ySoSuZ0n3Vssw7e4wbt/BdI= ARC-Seal: i=1; s=meesny; d=iki.fi; t=1725357885; a=rsa-sha256; cv=none; b=f2KKxDxYq9PRfUPi3AyP3VI7qbl2IeYCHXgVD6iJFM2SlUbAMoSKMxSn3CV7LTB5mHD0pc C8hjatw7WS4OsSxKofufIT3DPkVa+/Vjc7fgj5wknpTQWeNfMhSSR7JJYOumHcZ1fagqQh RmcbO6tPw/gDrokLi/8xJl4gwBN7gNU= ARC-Authentication-Results: i=1; ORIGINATING; auth=pass smtp.auth=hlinnaka smtp.mailfrom=hlinnaka@iki.fi ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=iki.fi; s=meesny; t=1725357885; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=Na6R/leiFmljVVmbqHZ8uUCzTWIZYjoapc9sSTz+7N0=; b=IzGxj06DR+lS2doFGlWAvQbToc5B9SDIU9cVCfKPTkOdCAq0CMd5PH6DyY933kIwrvsaw2 MxGd8hN8DhnIeStM5zUl2p7ViOeigOTSpMeq4BDMr9rHIHKJhHXVVgXIDBnF3iwePuW3LZ G+1nV37It6xUrGyCrT4KsSkkmJ8V2u0= Message-ID: <1662df4d-f0d4-456b-bc0e-660f01f3a122@iki.fi> Date: Tue, 3 Sep 2024 13:04:43 +0300 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: PG17 optimizations to vacuum To: Pavel Luzanov , Peter Geoghegan Cc: Melanie Plageman , "pgsql-generallists.postgresql.org" References: <3bda0d10-0d60-42b7-9600-abe23d54bb16@postgrespro.ru> <7bc8da54-fe4f-4ff2-aa4e-b54fc91df586@postgrespro.ru> <7760d3e3-15cc-4abf-ab33-027008c17d53@iki.fi> Content-Language: en-US From: Heikki Linnakangas In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On 03/09/2024 10:34, Pavel Luzanov wrote: > On 03.09.2024 00:11, Heikki Linnakangas wrote: >> Pavel, did you test v17 with checksums enabled and v16 with checksums >> disabled, by any chance? > > Exactly, You are right! > > My v16 cluster comes from the default Ubuntu distribution. > I forgot that checksums disabled by default. > But when I initialize the master cluster, I automatically set -k option. > > More accurate results for the test: > > CREATE TABLE t(id integer) WITH (autovacuum_enabled = off); > INSERT INTO t SELECT gen.id FROM generate_series(1,3_500_000) gen(id); > VACUUM FREEZE t; > UPDATE t SET id = id + 1; > VACUUM FREEZE VERBOSE t; > > checksums disabled > v16.4 WAL usage: 77437 records, 20832 full page images, 110654467 bytes > master WAL usage: 61949 records, 20581 full page images, 92549229 bytes > > checksums enabled > v16.4 WAL usage: 92848 records, 20985 full page images, 194863720 bytes > master WAL usage: 76520 records, 20358 full page images, 181867154 bytes That's more like it :-) > This a great optimization! > > Peter, Melanie, Heikki, > Thank you very much for your help and time spent! > Sorry for the noise before the release of PG17. Thanks for the testing! -- Heikki Linnakangas Neon (https://neon.tech)