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 1vp1Lb-00HKsf-2P for pgsql-general@arkaria.postgresql.org; Sun, 08 Feb 2026 09:44:55 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1vp1La-007qYd-2I for pgsql-general@arkaria.postgresql.org; Sun, 08 Feb 2026 09:44: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.96) (envelope-from ) id 1vp1La-007qYU-0h for pgsql-general@lists.postgresql.org; Sun, 08 Feb 2026 09:44:54 +0000 Received: from mail-ej1-x632.google.com ([2a00:1450:4864:20::632]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1vp1LX-000000016zq-40Bp for pgsql-general@lists.postgresql.org; Sun, 08 Feb 2026 09:44:52 +0000 Received: by mail-ej1-x632.google.com with SMTP id a640c23a62f3a-b86ed375d37so414439666b.3 for ; Sun, 08 Feb 2026 01:44:51 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1770543890; cv=none; d=google.com; s=arc-20240605; b=Cag5vgIdEVcmWxej3vBxrhFB3t5MMcl93byB6tmH6dHcPfVJ6GbNWEW2NBmL4PjDjb s2oaZMurgdmX1WaCp1W3qc8b0svxD+fnEAwv8aOaq0LdEzZXsyAJvEFUYyUspjKDAO3J fE4IvC36OV1H/yb3ub5emVET2n0vbvAHi/G1TD8vrhcKVT6jUO4aFiKFXDruBFypbRqZ TfqNCkWMQIXeTrHYERvUJ6hrQg4MgW1+xQHCQYmXV/34450F0Pvq9jlKnf9K1LUN6Lzk 6JECBmgB/ADq5P6XoNKMyl3xtEBp4Lk3V3XCW/9znZZUwhPWWUihi26HRdUw6GUQoma0 7fuQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:dkim-signature; bh=1EDmb6PaP/ls98/02y8rIK5iaisWC0z/ZqKmM8kjCC8=; fh=1i3EzMI3/SJAmYjq3gFfFgSsMFbOij3SgU3G87zzXTI=; b=MiGVek8ARMYzW7yi9ZCKKwaKkvDFUwCSaTWI0Y7CCCuJpgkMSz5Lis26QzXo2LYNC/ c2H9tywScFxMPY0TIwUm9DoCo1ZDVh3ayeuqADBjDqcFA66KMr90nd0bknWuxqwfy9WX z58kpqHXrwj29GQv6lXepN122YYq+ak1bvDYx++PUIKJvA1mkI4Rmmdsc7TELMQAgU6q CoFkE5nVtNcCRYntAzraxgjYehtgn9I8r0MsU9vY4wn88nyUQfYChTrQ2dmdaAg6cM5c EzlPt4RA0+dz3lCos/AOPDxY1RSICM8vhmno5ycYv5SZcFUkDi42N8CECCQZzXYQhiDV sXrQ==; darn=lists.postgresql.org ARC-Authentication-Results: i=1; mx.google.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1770543890; x=1771148690; darn=lists.postgresql.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=1EDmb6PaP/ls98/02y8rIK5iaisWC0z/ZqKmM8kjCC8=; b=ErQGnDELCEeWK7fCR11yR0SVDgnFmFcpoEw4BiixOgDquZ9yW+Ce4tzai+Z/35ZFW2 Kf6EHpLisgWmN2mdg0+PCVIW5lhyZSKGYj8f3gRNskO5VBSAds12ixBkvrWQwLLuMGs6 s+1fLSM1S6XZxfszhZVhshHV8glmxKEe3yMNVzl4FVlZTg0u8k7IneMnSa7MssGjcqFr oQ2wfEzpYuLHGeNpTyRqgB+mFao5l2kDxDgXUh8DSuKWptX5EuuHUFAq14s0AsVA/Yaw B2aZgTePzFXXzqAsDC7yOiYopx2i+SY51PeEUQyu31iiexwdA6qDQfck2Gdlbrbzbatt seHg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1770543890; x=1771148690; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=1EDmb6PaP/ls98/02y8rIK5iaisWC0z/ZqKmM8kjCC8=; b=FDGBnAJy5pkwkxD4N5d0LID0v6wSF5ToOrxJst+Er6Zw9FmR0Ahe1+G0g/eqCK7+Km uy7s7WYz0P944QZy2n+fRTfyaMJfkc6xiiNPcDRxvWwvgQl4rxDcqfaRDdnxxVl+w4cy 8SxCVAcE+EigPImTg+V4+0oIO+F0yzJMODOn/sV+isR/vjWp9RDcLBCblwYqKR2VsmyV ZN2vqPXhMT19r7BkKTgUfU9kZ42DZrc+NXPwSAUjLxY1CnYrWRLtfSSo1HTYjpPfZrhT bwOy0Mz947PvB0u/n/+15PMJReSt/JVt6By9NordS7Bna0EYaCRsl6CduUMHULbTWsUi vvoA== X-Gm-Message-State: AOJu0YxrJ2ao4qjbjYzb1gytiphOA+3tblbkqyLEwVCdtZVS3GRq1kuN zb0yqEMUYdJvWtPdqc7ZmZHfS3jDD1sGZqMeuwNcglYWRk+/54A74/gHd3Z5oTCz4qNy2SlDpsn 0NnH32aPmAfsw9lzkEQqbIN5l4wRMUgNmCQ== X-Gm-Gg: AZuq6aLBSWkpaoJZuEG0K9PzSsT8+x08jJT3/oYLp3b7ff2PYaFH0pgAuilocjwm9Ji YEnNsvo6PmejVAHoKHU8/OKgJR0G/qyDxQJixOqgbagTv1nR9CudsYVjMZVI+9cbP2NmLHSOLuJ R3GXw52ctpWSL3DNMEs9fN+TOfc5I3KOQRVvYrmaFEl4NADReVg86VGxh6FywYO336/PmPyoB9R azlzWBzW9PGnV2TJ5eQFSSLbqBTGtx7MOzHVYPyaxWaVGHW/Z/2ZZ3k2wszFS7bge0lGazS6jww gqAnjiSTD1aVtsNExghjyZyH3mw= X-Received: by 2002:a17:906:c10a:b0:b87:1839:2601 with SMTP id a640c23a62f3a-b8edf344219mr460507866b.40.1770543889366; Sun, 08 Feb 2026 01:44:49 -0800 (PST) MIME-Version: 1.0 References: In-Reply-To: From: Durgamahesh Manne Date: Sun, 8 Feb 2026 15:14:37 +0530 X-Gm-Features: AZwV_QjB-3YoFptugwgfTWmIbBGiXrAo_GOrIxq9bedaeMlC1w81ZvuzdNMOjHw Message-ID: Subject: Re: Table bloat threshold limit to trigger repack To: Ron Johnson Cc: pgsql-general Content-Type: multipart/alternative; boundary="00000000000095c1fd064a4cdf61" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --00000000000095c1fd064a4cdf61 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Sun, 8 Feb, 2026, 13:15 Ron Johnson, wrote: > On Sun, Feb 8, 2026 at 12:43=E2=80=AFAM Durgamahesh Manne < > maheshpostgres9@gmail.com> wrote: > >> On Sun, 8 Feb, 2026, 10:59 Ron Johnson, wrote: >> >>> On Sat, Feb 7, 2026 at 11:19=E2=80=AFPM Durgamahesh Manne < >>> maheshpostgres9@gmail.com> wrote: >>> >>>> Hi >>>> >>>> How much table bloat is acceptable before it affects performance in >>>> PostgreSQL? >>>> >>> >>> How big is the table? (For small tables, it doesn't matter.) How active >>> is it? How frequently are records updated? >>> >>> -- >>> Death to , and butter sauce. >>> Don't boil me, I'm still alive. >>> lobster! >>> >> >> >> Hi >> >> Table size 100gb >> I use pgstattuple_approx to get Table bloat is about 16gb as of now sinc= e >> after repack is done on 27th of January >> Fillfactor already in place >> It's very critical application with updates on non partitioned table >> > > What did you set the fillfactor to? > Have you minimized the number of indexes? (That lets HOT work better.) > How long does it take to VACUUM the table? > > -- > Death to , and butter sauce. > Don't boil me, I'm still alive. > lobster! > Hi Fillfactor 80 3 composite and pkey on one column as queries use those Vacuum 3min to complete Here autovacuum 5min to complete during load even with param tuning Regards Durga Mahesh > --00000000000095c1fd064a4cdf61 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


On Sun, 8 Feb, 2026, 13:15 Ron J= ohnson, <ronljohnsonjr@gmail.= com> wrote:
On Sun, Feb 8, 2026 at 12:43=E2=80=AFAM Durgamahesh Manne= <maheshpostgres9@gmail.com> wrote:
On= Sun, 8 Feb, 2026, 10:59 Ron Johnson, <ronljohnsonjr@gmail.com&= gt; wrote:
On Sat, Feb 7, 2026 at 11:19=E2=80=AFPM Durgam= ahesh Manne <maheshpostgres9@gmail.com> wrote:<= /div>
Hi

Ho= w much table bloat is acceptable before it affects performance in PostgreSQ= L?=C2=A0

How big is the tab= le? (For small tables, it doesn't matter.) How active is it?=C2=A0 How = frequently are records updated?

--
Death to <Redact= ed>, and butter sauce.
Don't boil me, I'm still alive.
<Redacted> lobster!


=
Hi

Tab= le size 100gb
I use pgstattuple_approx to get Table = bloat is about 16gb as of now since after repack is done on 27th of January= =C2=A0
Fillfactor already in place
It's very critical application with updates on non partitioned ta= ble=C2=A0

What= did you set the fillfactor=C2=A0to?
Have you minimized the numbe= r of indexes?=C2=A0 (That lets HOT work better.)
How long does it= take to VACUUM the table?

--
Death to <Redacted>, and butter sauce.
Don't boil m= e, I'm still alive.
<Redacted> lobster!
<= /div>

Hi

Fi= llfactor 80
3 composite and pkey on one column as qu= eries use those=C2=A0
Vacuum 3min to complete=C2=A0<= /div>
Here autovacuum 5min to complete during load even wi= th param tuning=C2=A0

Regards
Durga Mahesh=C2=A0=
--00000000000095c1fd064a4cdf61--