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 1vp7ck-001drE-1u for pgsql-general@arkaria.postgresql.org; Sun, 08 Feb 2026 16:27:02 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1vp7cj-008Cdy-1i for pgsql-general@arkaria.postgresql.org; Sun, 08 Feb 2026 16:27:01 +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 1vp7cj-008Cdq-0F for pgsql-general@lists.postgresql.org; Sun, 08 Feb 2026 16:27:01 +0000 Received: from mail-ot1-x330.google.com ([2607:f8b0:4864:20::330]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1vp7ch-000000019RA-0ZTU for pgsql-general@postgresql.org; Sun, 08 Feb 2026 16:27:00 +0000 Received: by mail-ot1-x330.google.com with SMTP id 46e09a7af769-7cfccba483eso1208247a34.0 for ; Sun, 08 Feb 2026 08:26:58 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1770568018; cv=none; d=google.com; s=arc-20240605; b=bwGCP/eBnxaefEebVpUqXdxl8wfdbEnX2RdjDHXrb5lzDKibtWzIErMcBksbGdaCGt ezs74ElEO9rzDpNMY8ygEwx0qxErExiqm6tg+oRQ7kiApd2EAq6QOs+Hsmr+RWInFtCl JBS1zwlLXsbDSkaRGVuAmksfCuSF/pkw17IuUV6dNYX+bY+xNBx3C8jGcgBWKjfDWhaN aYnfqW9334yIWncIgQHNNJwytfTmMakPxB8aLdVyR6WzmQqGoi7EHijvCTQ2EqXcm/Cu /rHrYVxisiwZFqDUT6r9DsCmnLtHuXIewumzD/JJRwRH9CDqtl7JVY+yxFRLrWZbZ7R3 Pwsg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :dkim-signature; bh=epgkN1AVCNYUvBYU+HCi4e6YU68bxBgj939Cg9nqeqs=; fh=KNSq+t9BltSXFnT3Yof/aKGBtqxeA+bTALiYdvTslaY=; b=T66vlwfu85RpLNA5JTRs1AkYLyJ08G5CH68ZlCBMv5S7V6lmS4jtP3ksqJuVEuhwdC 15UivwGKr6f4ND6GnDkI8NL6fxMKbozSSNDQTZCbiLaq07I7A24r6S8+F8FOqjymjb2p Pg8TENj5Wxzk+j3inDOpql+DKF5MGLTl1OlWNmRpqV8D7SuuQR0XefrM1+HBAoucJ1ik 46kX216aw+uZeIjTbgG7sPcRYggfuVFvi/UX+qILcN5mwvXzmXo1aSV6vX6kZjkR9PlA yC/30VvUXm5vvjuOdxKGUVBkTV69i5CDNfDW3rSnn7HJAhl+rhWgcVkv2qNw96tvVvuy vwcA==; darn=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=1770568018; x=1771172818; darn=postgresql.org; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :from:to:cc:subject:date:message-id:reply-to; bh=epgkN1AVCNYUvBYU+HCi4e6YU68bxBgj939Cg9nqeqs=; b=kGngoXfnGlUtgdHHavYfFvclptDzAQo/qRu7Ia1tsYbf1B2+aSB8h3JBZQ0eRdgA90 nbKBUuadkF2WKi1xC51Oc+1EsK60uxm49q8f/cvHkdZEsG4+p1YP7l3c8rpdWQuR1Jyp 85x6AGIVzmNfo2L+f/zfV/I7yyiZBT4YRaaJ1Mf6eqg8rmuICyJSVINps1p6jal2gF01 pan+YC+caHQu12VjsnMeRtDDNb7xKVPJVTt6B+gPHdmEUaAV8WH5Y1UJiOYI1dq/zmPA sc6AdJpQarR2ei2ljbbWx0/fT7+zoMKWKNZMjdUmpWoLET4DnvxIVIFhL+iAyfDoNx8i XtgA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1770568018; x=1771172818; h=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=epgkN1AVCNYUvBYU+HCi4e6YU68bxBgj939Cg9nqeqs=; b=OS6QbznI0kRajI0irQlnyxYH9n+e0jG54w6HpkmlqX/Q2X2yMsezWGWpwydmTdmDtt BSrpRZT+V9OnbjEheP0l3AXwz/j5M6SqMnsLJ8/WX2bd/TzpcqVAxYoRq3yV6H8duVWR AdJi1myhOg5hbnR/ujkyr0EDtq4eTJBt9cSgLgsUw5lT8g9+W1fdI1XVXAmOAueFxAE0 yxEQZPbv2O+/ffe+Ka6HW/9FmVkd5HIhV2mPcnumh1fNDNLeSDmX6Yoh9N2ye+fvfpd9 VJ8z8xK29up2WbjSx7QjkmoZvtK6ilwgxJR9WYXTq+t9axaxJoPV87VkKagnzM0qQ6fc XNCw== X-Gm-Message-State: AOJu0YwfPkVjg2QvRsISDJsUppIfUAvqR4nSvslz9glJDx87TNeuXffr W7gYsH0sXAHg28eYRXS/AnBhdmXoc69LtC0EMxeWncFh85vFm0a0aqrt38l//R1nLxnOQ5qWpSn FLs1C2+oKN9KbOmxQIeAEjXhfvPELRln9vh6d X-Gm-Gg: AZuq6aJI0UDmOc1B3VCb6yp6vzn5L1QK2eRFqaJ1AhBNJ5wxjPl21zRQ3ekJ6KIncxH 1vxQrN94919hFAhPWBjejhC7zkaCsGr9YTz7HQNYJOu92z/rbIwPetz3oT0cFWNhU+tE0RBUXTW qK/pIk61C5QLOswy3ZXryFrZUYwGO9cZUhmtuGlBlTTmEJCoGVBVQnowo3xhN7dwlNiIM0tWV7o 1pbetylwKQbHRsZ3sofl3siJuPD4TDpqTBMUKxC8KjrnYj8vZBv5PsG7UxMVORcK7E47+IB X-Received: by 2002:a05:6820:f014:b0:664:8644:884e with SMTP id 006d021491bc7-66d0d2ff391mr3583865eaf.82.1770568017894; Sun, 08 Feb 2026 08:26:57 -0800 (PST) MIME-Version: 1.0 References: In-Reply-To: From: Ron Johnson Date: Sun, 8 Feb 2026 11:26:46 -0500 X-Gm-Features: AZwV_QhjflhfhBMEmM9tt7Ch06otu3yYUX5Wk3MlZwE3lq3KyMI1WST10IlJRao Message-ID: Subject: Re: Table bloat threshold limit to trigger repack To: pgsql-general Content-Type: multipart/alternative; boundary="000000000000c1e212064a527df2" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --000000000000c1e212064a527df2 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Sun, Feb 8, 2026 at 4:44=E2=80=AFAM Durgamahesh Manne wrote: > 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 activ= e >>>> is it? How frequently are records updated? >>>> >>> >>> >> Hi >>> >>> Table 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 >>> 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? >> > > 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 > 1. What is autovacuum_vacuum_scale_factor set to? 2. How often does the autovacuum run? (pg_stat_user_tables will tell you.) 3. Do you update any of those indexed columns? 4. How often do queries/reports need to read large chunks of the table (aka sequentially scan it)? 5. Is performance currently suffering, or are you proactively worrying? Note: Regular vacuuming eliminates bloat. --=20 Death to , and butter sauce. Don't boil me, I'm still alive. lobster! --000000000000c1e212064a527df2 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
On Sun, Feb 8, 2026 at 4:44=E2=80=AFAM Du= rgamahesh Manne <maheshpost= gres9@gmail.com> wrote:
On= Sun, 8 Feb, 2026, 13:15 Ron Johnson, <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> wrot= e:
On Sat, Feb 7, 2026 at 11:19=E2=80=AFPM Durgamahesh Ma= nne <maheshpostgres9@gmail.com> wrote:
<= div dir=3D"auto">Hi

How much t= able bloat is acceptable before it affects performance in PostgreSQL?=C2=A0=

How big is the table? (For= small tables, it doesn't matter.) How active is it?=C2=A0 How frequent= ly are records updated?
=C2=A0
Hi

Table size 100gb
I use pgstattuple_approx to ge= t 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 partit= ioned table=C2=A0

<= div>What did you set the fillfactor=C2=A0to?
Have you minimized t= he number of indexes?=C2=A0 (That lets HOT work better.)
How long= does it take to VACUUM the table?
=C2=A0
Hi

Fillfactor 80
3 composite and pkey on one column as queries use thos= e=C2=A0
Vacuum 3min to complete=C2=A0
Here autovacuum 5min to complete during load even with param tuni= ng=C2=A0

1.= What is=C2=A0autovacuum_vacuum_scale_factor set to?
2. How often= does the autovacuum run? (pg_stat_user_tables will tell you.)
3.= Do you update any of those indexed columns?
4. How often do quer= ies/reports need to read large chunks of the table (aka sequentially scan i= t)?
5. Is performance currently suffering, or are you proactively= worrying?

Note: Regular vacuuming eliminates bloa= t.

--
Death to <R= edacted>, and butter sauce.
Don't boil me, I'm still alive.<= br>
<Redacted> lobster!
--000000000000c1e212064a527df2--