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 1nP2TF-0002ry-7M for pgsql-admin@arkaria.postgresql.org; Tue, 01 Mar 2022 13:23:17 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1nP2TC-0005at-Fg for pgsql-admin@arkaria.postgresql.org; Tue, 01 Mar 2022 13:23:14 +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 1nP2TB-0005ak-Nl for pgsql-admin@lists.postgresql.org; Tue, 01 Mar 2022 13:23:14 +0000 Received: from mail-wr1-x462.google.com ([2a00:1450:4864:20::462]) by makus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1nP2T8-0005Yg-FV for pgsql-admin@lists.postgresql.org; Tue, 01 Mar 2022 13:23:12 +0000 Received: by mail-wr1-x462.google.com with SMTP id d3so20534372wrf.1 for ; Tue, 01 Mar 2022 05:23:10 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=retailexpress.com; s=google; h=from:references:in-reply-to:mime-version:thread-index:date :message-id:subject:to; bh=YeYzKQL3CJPzmP7pfC/I+qofJnQnTctI3MYauEoIrwk=; b=A6lJS1rXak6xV9QWk2f7nX6uj9jTTvn/Zyza8lo8dP1hri3Gochndlsc+EbzwHLSvX GN9peYSgQ1VNlVpyQ6QXC7CVZ6ooLED2MQpfzAUG/2gmlVgZsrtuK/2i/6OGrud3pQVe d99h/Loe5fSPvkmsyOcPYzSnA8DA4gWJ1DEMI= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:references:in-reply-to:mime-version :thread-index:date:message-id:subject:to; bh=YeYzKQL3CJPzmP7pfC/I+qofJnQnTctI3MYauEoIrwk=; b=PHWD/c8qmK01LghaVGPyX+YQK0YSqb5lfeuwEtJlCdQD0NNlp9oomkVvU6r/Hg9IuR frhpOi7RDEKloQyLINRj3KWZV6j/WmDHXxwAN3DZLenV6EadEBgNU25O3cX0ggsyGKfB iSjyeN1G2wtGRsIP0ze1yC4r93z4Ci8uTUI09azIxAVUvGdeiZ//+k+L0yhFhN87pbor H9d4BrkxshcWNHw7DRhbf9Ix6B/zkgsi+VyCzuxgboNu7Sx/jc36BDaeB8a+2FMi7ucO lPMSTEDnPwaLS58WesLVqA+li9GFuwwe656nb8awrocbJjPtosRJCXOgw2Z7L1lkjtnA pHXA== X-Gm-Message-State: AOAM531XOnHc0NZVQVylRMTF2FjhOrJnmOo+dilF2IdOSytTjpp9U+M8 jlwnwT0sA44mJBmImn+nE6fnQpZzzR7QGGAw9nPREANZW9A7hA== X-Google-Smtp-Source: ABdhPJyPE1qzDZXNEIpRfCbZ15bvpYVpcSQGuKvVsGUEZ90wx/kUAuZyBzlX9VZFFPCKvtLJr0XNaNEvg7+K X-Received: by 2002:adf:e484:0:b0:1ed:b572:3a01 with SMTP id i4-20020adfe484000000b001edb5723a01mr18897671wrm.431.1646140988665; Tue, 01 Mar 2022 05:23:08 -0800 (PST) Received: from eu2gs2.smtp.exclaimer.net (eu2gs2.smtp.exclaimer.net. [40.127.253.49]) by smtp-relay.gmail.com with ESMTPS id j19-20020a05600c1c1300b00382aa03b3b2sm6327wms.14.2022.03.01.05.23.07 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Tue, 01 Mar 2022 05:23:08 -0800 (PST) X-Relaying-Domain: retailexpress.com Received: from mail-yb1-f198.google.com (209.85.219.198) by eu2gs2.smtp.exclaimer.net (40.127.253.49) with Exclaimer Signature Manager ESMTP Proxy eu2gs2.smtp.exclaimer.net (tlsversion=TLS12, tlscipher=TLS_ECDHE_WITH_AES256_SHA1); Tue, 1 Mar 2022 13:23:08 +0000 X-ExclaimerHostedSignatures-MessageProcessed: true X-ExclaimerProxyLatency: 11952672 X-ExclaimerImprintLatency: 5023149 X-ExclaimerImprintAction: b2349021b82f44f2bb005e52fe825996 Received: by mail-yb1-f198.google.com with SMTP id w1-20020a05690204e100b006244315a721so13752072ybs.0 for ; Tue, 01 Mar 2022 05:23:07 -0800 (PST) X-Received: by 2002:a81:c703:0:b0:2d0:cc6b:3092 with SMTP id m3-20020a81c703000000b002d0cc6b3092mr24640548ywi.449.1646140985839; Tue, 01 Mar 2022 05:23:05 -0800 (PST) X-Received: by 2002:a81:c703:0:b0:2d0:cc6b:3092 with SMTP id m3-20020a81c703000000b002d0cc6b3092mr24640503ywi.449.1646140985232; Tue, 01 Mar 2022 05:23:05 -0800 (PST) From: Graham Myers References: In-Reply-To: MIME-Version: 1.0 X-Mailer: Microsoft Outlook 16.0 Thread-Index: AQDX3KMDKj9/z2cUfzfo4i8YONk1Fq6rIpkw Date: Tue, 1 Mar 2022 13:23:03 -0000 Message-ID: <18318cd6f2b25385771ce8f0645a1811@mail.gmail.com> Subject: RE: DB grow overtime with autovacuum (postgres 9.6.9) To: Avihai Shoham , pgsql-admin@lists.postgresql.org Content-Type: multipart/related; boundary="000000000000ad2e3005d92810ca" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk This is a multi-part message in MIME format. --000000000000ad2e3005d92810ca Content-Type: multipart/alternative; boundary="000000000000ad2e2e05d92810c9" --000000000000ad2e2e05d92810c9 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable You need to find why the autovacuum is not completing. Use the following to find the tables that have not been updated - its more than likely to be the xmin horizon issue due to long running uncommitted transactions. WITH constants AS (SELECT current_setting('autovacuum_vacuum_scale_factor')::float8 AS autovacuum_vacuum_scale_factor, current_setting('autovacuum_vacuum_threshold')::float8 AS autovacuum_vacuum_threshold, 1000000 AS autovacuum_vacuum_threshold_trigger ) SELECT t.schemaname AS "SchemaName", t.relname AS "TableName", TO_CHAR(t.n_tup_ins, 'fm999G999G999G990') AS "Inserts", TO_CHAR(t.n_tup_upd, 'fm999G999G999G990') AS "Updates", TO_CHAR(t.n_tup_del, 'fm999G999G999G990') AS "Deletes", TO_CHAR(c.reltuples, 'fm999G999G999G990') AS "AnalyzedTuples", CASE WHEN c.reltuples < t.n_live_tup THEN '<' WHEN c.reltuples > t.n_live_tup THEN '>' ELSE '' END AS "Stale"= , TO_CHAR(t.n_live_tup,'fm999G999G999G990') AS "LiveTuples", TO_CHAR(t.n_dead_tup,'fm999G999G999G990') AS "DeadTuples", TO_CHAR(LEAST(99.999,n_dead_tup::float4/GREATEST(1,n_live_tup)::float4*100)= ,'fm990D00%') AS "DeadRatio", --Limit to 1000% TO_CHAR(c.reltuples * COALESCE(SPLIT_PART(c.reloptions[1],'=3D',2)::float8,autovacuum_vacuum_scal= e_factor) + autovacuum_vacuum_threshold,'fm999G999G990') AS "AutoVacuumTrigger", CASE WHEN t.n_dead_tup > c.reltuples * COALESCE(SPLIT_PART(c.reloptions[1],'=3D',2)::float8,autovacuum_vacuum_scal= e_factor) + autovacuum_vacuum_threshold THEN '*' ELSE '' END AS "ShouldVacuum", TO_CHAR(COALESCE(SPLIT_PART(c.reloptions[1],'=3D',2)::float8,autovacuum_vac= uum_scale_factor)*100,'fm999G990D00%') AS "CurrentScaleFactor", CASE WHEN c.reltuples * COALESCE(SPLIT_PART(c.reloptions[1],'=3D',2)::float8,autovacuum_vacuum_scal= e_factor) + autovacuum_vacuum_threshold > autovacuum_vacuum_threshold_trigger THEN TO_CHAR(autovacuum_vacuum_threshold_trigger,'fm999G999G990') --threshold instead of scale factor ELSE TO_CHAR(COALESCE(SPLIT_PART(c.reloptions[1],'=3D',2)::float8,autovacuum_vac= uum_scale_factor)*100,'fm999G990D00%') END AS "SuggestedScaleFactor", t.last_analyze, t.last_autoanalyze, t.last_vacuum, t.last_autovacuum, t.analyze_count AS analyzecount, t.autoanalyze_count AS autoanalyzecount, t.vacuum_count AS vacuumcount, t.autovacuum_count AS autovacuumcount, pg_size_pretty(pg_total_relation_size(c.oid)) AS totalSize, pg_size_pretty(pg_indexes_size(c.oid)) AS indexSize, pg_size_pretty(COALESCE(pg_total_relation_size(c.reltoastrelid),0)) AS ToastSize FROM pg_stat_user_tables AS t JOIN pg_class AS c ON c.relname=3Dt.relname JOIN pg_catalog.pg_namespace AS n ON n.oid =3D c.relnamespace AND n.nspname=3Dt.schemaname CROSS JOIN constants WHERE (t.n_live_tup > 0 AND t.n_dead_tup > GREATEST(100000,c.reltuples * autovacuum_vacuum_scale_factor + autovacuum_vacuum_threshold) --more than 10k dead tuples or dead tuples exceed threshold ) -- OR c.reltuples * autovacuum_vacuum_scale_factor + autovacuum_vacuum_threshold > autovacuum_vacuum_threshold_trigger -- the autovacuum threshold is over threshold - might need reducing ORDER BY 1,2; If you manually vacuum verbose analyze for one of the tables this reports on, it should then tell you the minimum xmin value (which is the horizon). If you then look in pg_stat_activity it should tell you the transactions that are preventing the horizon from moving forward select * from pg_stat_activity where backend_xmin::text::bigint <=3D <*minimum_xmin value here*> order by xact_start eg select * from pg_stat_activity where backend_xmin::text::bigint <=3D 422050991 order by xact_start regards Captain.Glumbo =F0=9F=98=8A *From:* Avihai Shoham *Sent:* 01 March 2022 12:21 *To:* pgsql-admin@lists.postgresql.org *Subject:* DB grow overtime with autovacuum (postgres 9.6.9) Hi All, We use postgres 9.6.9 we set the following autovacuum setting , but still the DB grow overtime autovacuum =3D on work_mem=3D 50MB wal_buffers=3D -1 synchronous_commit=3Doff log_autovacuum_min_duration =3D 0 autovacuum_vacuum_scale_factor =3D 0.1 autovacuum_analyze_scale_factor =3D 0.05 autovacuum_vacuum_threshold =3D 25 autovacuum_max_workers=3D 6 autovacuum_naptime =3D 10s autovacuum_vacuum_cost_delay =3D 10ms autovacuum_vacuum_cost_limit =3D -1 autovacuum_freeze_max_age =3D 1000000000 autovacuum_multixact_freeze_max_age =3D 400000000 autovacuum_work_mem =3D -1 autovacuum_analyze_threshold =3D 10 we have any idea ? DB size grew from 11G to 25G in 2wks. I read that we may need to increase the max_fsm_pages setting. not sure if it is needed if we have autovacuum or how to do it if needed? Thank you all Avihai Graham Myers --000000000000ad2e2e05d92810c9 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: quoted-printable

You need to find why the a= utovacuum is not completing.=C2=A0 Use the following to find the tables tha= t have not been updated=C2=A0 - its more than likely to be the xmin horizon= issue due to long running uncommitted transactions.

=C2=A0

WITH constants

=C2=A0=C2=A0AS (SELECT

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 =C2=A0current_setting('autovacuum_vacuum_scale_factor')::= float8 AS autovacuum_vacuum_scale_factor,

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 current_setting('autovacuum_vacuum_threshold'= )::float8=C2=A0=C2=A0=C2=A0 AS autovacuum_vacuum_threshold,

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 1000000=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 AS autovacuum_vac= uum_threshold_trigger

SELECT

= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0t.schemaname=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0AS "SchemaName",

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0 t.relname=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 AS "TableName",

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 TO_CHAR(t.n_tup_= ins, 'fm999G999G999G990')=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 AS "Inserts&= quot;,

=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0 TO_CHAR(t.n_tup_upd, 'fm999G999G999G990')= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0 AS "Updates",

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =C2=A0= =C2=A0 TO_CHAR(t.n_tup_del, 'fm999G999G999G990')=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0 AS "Deletes",

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0TO_CHAR(c.reltuples, = 'fm999G999G999G990')=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 AS "AnalyzedTuples= ",

=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0 CASE WHEN c.reltuples < t.n_liv= e_tup THEN '<' WHEN c.reltuples > t.n_live_tup THEN '>= ' ELSE '' END

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 AS "Stale",

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =C2= =A0=C2=A0 TO_CHAR(t.n_live_tup,'fm999G999G999G990')=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 AS "LiveTuples",

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0TO= _CHAR(t.n_dead_tup,'fm999G999G999G990')=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0AS &q= uot;DeadTuples",

=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0AS "DeadRatio", --Limit to 1000%

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 = =C2=A0=C2=A0 TO_CHAR(c.reltuples * COALESCE(SPLIT_PART(c.reloptions[1],'= ;=3D',2)::float8,autovacuum_vacuum_scale_factor) + autovacuum_vacuum_th= reshold,'fm999G999G990')

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 AS "AutoVacuumTrigger",

=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 =C2=A0=C2=A0 CASE WHEN t.n_dead_tup > c.reltuples * COAL= ESCE(SPLIT_PART(c.reloptions[1],'=3D',2)::float8,autovacuum_vacuum_= scale_factor) + autovacuum_vacuum_threshold THEN '*' ELSE ''= ; END

=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0 AS "ShouldVacuum",

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0 TO_= CHAR(COALESCE(SPLIT_PART(c.reloptions[1],'=3D',2)::float8,autovacuu= m_vacuum_scale_factor)*100,'fm999G990D00%')

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 AS "CurrentScal= eFactor",

=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 CASE WHEN c.reltuples * COALESCE(SPLIT_PA= RT(c.reloptions[1],'=3D',2)::float8,autovacuum_vacuum_scale_factor)= + autovacuum_vacuum_threshold > autovacuum_vacuum_threshold_trigger

=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 THEN TO_CHAR(aut= ovacuum_vacuum_threshold_trigger,'fm999G999G990') --threshold inste= ad of scale factor

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ELSE TO_CHAR(COALESCE(SPLI= T_PART(c.reloptions[1],'=3D',2)::float8,autovacuum_vacuum_scale_fac= tor)*100,'fm999G990D00%')

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 END=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0 AS "SuggestedScaleFactor",

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0 =C2=A0=C2=A0 t.last_analyze,

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0 t.last_autoa= nalyze,

=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0 =C2=A0=C2=A0 t.last_vacuum,

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 = =C2=A0=C2=A0 t.last_autovacuum,

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 t.analyze_count AS analyze= count,

=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0 t.autoanalyze_count AS autoanalyzecount,

=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 t.vacuum_count AS vacuumcount,

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 t.autovacuum_coun= t AS autovacuumcount,

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 pg_size_pretty(pg_indexes_size(c.oi= d))=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 AS indexSize,

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0 pg_size_pretty(COALESCE(pg_total_relation_size(c.reltoastrelid),0)) AS = ToastSize

=C2=A0 FRO= M pg_stat_user_tables=C2=A0=C2=A0=C2=A0=C2=A0 AS t

=C2=A0 JOIN pg_class=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 AS c = ON c.relname=3Dt.relname

=C2=A0 JOIN pg_catalog.pg_namespace AS n ON n.oid =3D c.relnamespace A= ND n.nspname=3Dt.schemaname

CROSS JOIN constants

WHERE (t.n_live_tup > 0 AND

=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0t.n_= dead_tup > GREATEST(100000,c.reltuples * autovacuum_vacuum_scale_factor = + autovacuum_vacuum_threshold) --more than 10k dead tuples or dead tuples e= xceed threshold

=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 )

--=C2=A0 OR c.reltuples * autovacuum_vacuum_scale_factor += autovacuum_vacuum_threshold > autovacuum_vacuum_threshold_trigger=C2= =A0 -- the autovacuum threshold is over threshold - might need reducing

ORDER BY 1,2;

=C2=A0<= /span>

If you manually vacuum verbose analyze f= or one of the tables this reports on, it should then tell you the minimum x= min value (which is the horizon).

=C2=A0

= If you then look in pg_stat_acti= vity it should tell you the transactions that are preventing the horizon fr= om moving forward

select * from pg_s= tat_activity where backend_xmin::text::bigint <=3D <minimum_xmin value here> order by xact_start

eg=

select * from pg_stat_activity whe= re backend_xmin::text::bigint <=3D 422050991 order by xact_start<= /p>

=C2= =A0

=C2=A0

regards

Captain.Glumbo =F0=9F=98=8A

=C2=A0

=
=

Graham Myers= 203;
3D""
=
 
=

<= b>From: Avihai Shoham = <avihai.shoham@gmail.com&= gt;
Sent: 01 March 2022 12:21
To: pgsql-admin@lists.postgresql.org
= Subject: DB grow overtime with autovacuum (postgres 9.6.9)

=C2=A0

Hi All,= =C2=A0

=C2=A0

We use postgres 9.6.9

we set th= e following autovacuum setting , but still the DB grow overtime

=C2=A0

autov= acuum =3D on
work_mem=3D 50MB
wal_buffers=3D -1
synchronous_commit= =3Doff
log_autovacuum_min_duration =3D 0
autovacuum_vacuum_scale_fact= or =3D 0.1
autovacuum_analyze_scale_factor =3D 0.05
=C2=A0autovacuum_= vacuum_threshold =3D 25
=C2=A0autovacuum_max_workers=3D 6
=C2=A0autov= acuum_naptime =3D 10s
=C2=A0autovacuum_vacuum_cost_delay =3D 10ms
= =C2=A0autovacuum_vacuum_cost_limit =3D -1
autovacuum_freeze_max_age =3D = 1000000000
autovacuum_multixact_freeze_max_age =3D 400000000
=C2=A0au= tovacuum_work_mem =3D -1
autovacuum_analyze_threshold =3D 10

=C2=A0

we ha= ve

=C2=A0

any idea ?

DB size grew=C2=A0from 11G to 25G in 2wks.

I read that we may need to=C2=A0=C2=A0increase the max_fsm_p= ages setting. not sure if it is needed if we have autovacuum or how to do i= t if needed?

=C2=A0

Thank you all

Aviha= i

--000000000000ad2e2e05d92810c9-- --000000000000ad2e3005d92810ca Content-Type: image/png; name="image001.png" Content-Disposition: inline; filename="image001.png" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f07eff5dddbeaac2_0.1 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 --000000000000ad2e3005d92810ca Content-Type: image/png; name="image335828.png" Content-Transfer-Encoding: base64 Content-ID: Content-Description: image335828.png Content-Disposition: inline; creation-date="Tue, 01 Mar 2022 13:23:07 +0000"; filename=image335828.png; modification-date="Tue, 01 Mar 2022 13:23:07 +0000"; size=3837 iVBORw0KGgoAAAANSUhEUgAAAjcAAAB8CAMAAACi9mEaAAAACVBMVEUAAAAApKcAAADWePEqAAAA A3RSTlP//wDXyg1BAAAACXBIWXMAAAsTAAALEwEAmpwYAAAGx2lUWHRYTUw6Y29tLmFkb2JlLnht cAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQi Pz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1Q IENvcmUgNi4wLWMwMDYgNzkuZGFiYWNiYiwgMjAyMS8wNC8xNC0wMDozOTo0NCAgICAgICAgIj4g PHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50 YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8v bnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1l bnRzLzEuMS8iIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3Av MS4wLyIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5z OnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMi IHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDIyLjQgKE1hY2ludG9zaCkiIHhtcDpD cmVhdGVEYXRlPSIyMDE4LTEwLTEyVDE1OjUyOjIzKzAxOjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAy MS0wNy0xNlQxMDowMzo1MSswMTowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAyMS0wNy0xNlQxMDow Mzo1MSswMTowMCIgZGM6Zm9ybWF0PSJpbWFnZS9wbmciIHBob3Rvc2hvcDpDb2xvck1vZGU9IjIi IHBob3Rvc2hvcDpJQ0NQcm9maWxlPSJzUkdCIElFQzYxOTY2LTIuMSIgeG1wTU06SW5zdGFuY2VJ RD0ieG1wLmlpZDpjNDlkZjYxMy01N2IwLTRhYWItYmEzNS0zY2VkMTZiZTM0Y2IiIHhtcE1NOkRv Y3VtZW50SUQ9ImFkb2JlOmRvY2lkOnBob3Rvc2hvcDo2Y2FmODYyNC05M2NiLWI4NGEtOTUzOC04 NWU1MTQ3NWRiZTMiIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo4MmRjYmYzZC0x Yjc0LTQwMWYtOTVmYi1hYzJiOTdmMGNjOTUiPiA8eG1wTU06SGlzdG9yeT4gPHJkZjpTZXE+IDxy ZGY6bGkgc3RFdnQ6YWN0aW9uPSJjcmVhdGVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjgy ZGNiZjNkLTFiNzQtNDAxZi05NWZiLWFjMmI5N2YwY2M5NSIgc3RFdnQ6d2hlbj0iMjAxOC0xMC0x MlQxNTo1MjoyMyswMTowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIy LjQgKE1hY2ludG9zaCkiLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0 YW5jZUlEPSJ4bXAuaWlkOjdhMTI0NTUxLWEwNWQtNDljNS04MTkyLWZhNGM4OWI5NWEzNiIgc3RF dnQ6d2hlbj0iMjAyMS0wNy0xM1QwOTo0MjoyNyswMTowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0i QWRvYmUgUGhvdG9zaG9wIDIyLjQgKE1hY2ludG9zaCkiIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPHJk ZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOmM0OWRm NjEzLTU3YjAtNGFhYi1iYTM1LTNjZWQxNmJlMzRjYiIgc3RFdnQ6d2hlbj0iMjAyMS0wNy0xNlQx MDowMzo1MSswMTowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIyLjQg KE1hY2ludG9zaCkiIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPC9yZGY6U2VxPiA8L3htcE1NOkhpc3Rv cnk+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQg 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 H71RKNDlAAAAAElFTkSuQmCC --000000000000ad2e3005d92810ca--