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 1vfcHo-003Pxj-0B for pgsql-admin@arkaria.postgresql.org; Tue, 13 Jan 2026 11:10:09 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1vfcHn-004MwG-0L for pgsql-admin@arkaria.postgresql.org; Tue, 13 Jan 2026 11:10:07 +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 1vfcHm-004Mw7-14 for pgsql-admin@lists.postgresql.org; Tue, 13 Jan 2026 11:10:06 +0000 Received: from mail-westeuropeazon11023123.outbound.protection.outlook.com ([52.101.72.123] helo=AM0PR02CU008.outbound.protection.outlook.com) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1vfcHj-000Bnk-0G for pgsql-admin@lists.postgresql.org; Tue, 13 Jan 2026 11:10:05 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=u3WSDlrZbIBsObIdS7iH8mf13KXZhoxzW4HJjgY1Xgloxb30jh17MIT7Fwy9uzs2JeAKMPZ0aLMVSDBiIV0vpl1u8ApqX/ZRXCot8N+LErVqVZCgcQle0U9BRV1LPUIiusFwKmwkNUCVNfxsI3REKmRLoJXstgHpHxQKKeQ0kk/y//zqKcQeF1Yqcsk5c8NU60tQi0yoHR6CR7GmjEw8gnt268bbyGpJ5F9HpM3upIoKwdBG6iHfniIJ1NsW/2ycmM/qlood6R9kQGWDZiZKMgs6d7D0+ajggj9kq12TIWsrE4r18XaMa5TJulI5Kzd9WSgoF3VReGzc09IIYR4Uww== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=7ZL7/nD5+XttWmml5j605Mw537DSjWX/L4MZF56eshA=; b=vp6o2UH9YiU1eT0cYOBARezIDsX2/BxajwZBMwEODQIdT/6UqiHIDEkdMchKKD8KsEXQe09k0csJJlQPgRx6yr1F8BAlTpe2YTLw+3+NgOsTrnzgVuCjpSBb5HvaWjD1MU2BBVdzx5dz3HO3lQvPy1Pt5/OGJKhHUqAE2bAxlopbtWy4Bx1gTFv7yT3QI2C+DTToMoS1G5BF3vwP+c36JXM8ZNi0Gn3Lf7aQ2XRqbqPEqZDiNM19+piA2cs+RKb0ijN84qHww9G2Id0VBJEZ9s9ftc79oY+e54kTbOW4bppn8fL33GEXuhUBbUJpQN5FFmk7prKl7L5rAw7MOYX+fg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=parlamentib.es; dmarc=pass action=none header.from=parlamentib.es; dkim=pass header.d=parlamentib.es; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=parlamentib.es; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=7ZL7/nD5+XttWmml5j605Mw537DSjWX/L4MZF56eshA=; b=eF0MBf+dzuCAbKeYcLklA/U7dLI+3qpox3J0mZ/Er7BXQRok3WQcUnrmQZhCukqtXu4TGve76O3cQ9ROI9bPzfbqmeoU42HpOy/2VmI6z0Mfq+7JlM7A2h2G3fbrBsWvGx9XyR2WcGevtn7j6AYE0Z3V128ZUg7y2gqoTzEQQlcC1kxuVHJmBmZY2vObSJul7Xcy+x88t9DuFxABboPM056aSwJFWvTA6TGE3EEgX1TBWbC6UcuxqM7jsUKVgL3C6yXURtj2FpCHSCRxb7G1xTGmWWd7M9TUuRJ9M6t8q9T8oBfVbsN2LBi0LKZcwoBLjb3qIWUzPH3xrVRH3Clx5A== Received: from DU0PR08MB7921.eurprd08.prod.outlook.com (2603:10a6:10:3c8::5) by VI1PR08MB10123.eurprd08.prod.outlook.com (2603:10a6:800:1c7::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9499.7; Tue, 13 Jan 2026 11:09:59 +0000 Received: from DU0PR08MB7921.eurprd08.prod.outlook.com ([fe80::530a:276b:e335:21d3]) by DU0PR08MB7921.eurprd08.prod.outlook.com ([fe80::530a:276b:e335:21d3%5]) with mapi id 15.20.9499.002; Tue, 13 Jan 2026 11:09:58 +0000 From: =?Windows-1252?Q?Gabriel_Guillem_Barcel=F3_Soteras?= To: Paul Smith* CC: "pgsql-admin@lists.postgresql.org" Subject: Re: VACUUM/ANALYZE Strategy for Low-Activity PostgreSQL 15 Instance Thread-Topic: VACUUM/ANALYZE Strategy for Low-Activity PostgreSQL 15 Instance Thread-Index: AQHchGJXKjS2rQK4KU+5eKwTs92TzrVP2DqAgAAFqLc= Date: Tue, 13 Jan 2026 11:09:58 +0000 Message-ID: References: <81c12173-6da4-43e9-866a-00321a00415a@pscs.co.uk> In-Reply-To: <81c12173-6da4-43e9-866a-00321a00415a@pscs.co.uk> Accept-Language: es-ES, en-GB, en-US Content-Language: en-GB X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-reactions: allow authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=parlamentib.es; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: DU0PR08MB7921:EE_|VI1PR08MB10123:EE_ x-ms-office365-filtering-correlation-id: 220bcc29-ad83-4ea8-034f-08de52944a0a x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0;ARA:13230040|1800799024|376014|366016|8096899003|7053199007|38070700021; x-microsoft-antispam-message-info: =?Windows-1252?Q?D7o7i60g6K+Q24QAujoEZJJsb+H4ZVPYQ5OpWKuvbiKYq23UiQPZ5mi6?= =?Windows-1252?Q?3lh01TswPCq+C8cN9FvJgZwceyuo11bqAkspC4lXwOgZmeJY6bi1Qnhx?= =?Windows-1252?Q?vKoZ2OB++GGFgzg+//Jvyaf/CWBgdur4J5aRvKvPwqDLYomKlGxM6ppM?= =?Windows-1252?Q?rQZEErliWWnkxrJ1SJujl2jLcA6lqTvZqljyaMu/Au1XyGsy9iRrBMRe?= =?Windows-1252?Q?oO9/DfJD6VEnzFOl6hkeXNQa9IbGLH2EZBO34E81l0ytpvqm2A3fLCqw?= =?Windows-1252?Q?QWsNdLXbHZe5VvihcSSekLxINc+p4Mx7nswXTPZxI8wM5HuRU/wsuJZY?= =?Windows-1252?Q?VLMwTYdC7IYNjN08c3wBvsKLCfDvoi/ZgKXie9WwFlMkvzRZsDgr1BhS?= =?Windows-1252?Q?v7oIAWj8thuL+x06SOfeeh8AiJu/BkFFB9HT2OTak6BrOKD0WBXnYA6J?= =?Windows-1252?Q?xiIkFz4XzKakS1jvkV93+q/wOVgy+8oRU55prMcSXSVwI9XxBucZyF23?= =?Windows-1252?Q?AfRqfW4+2hX4C9RwHPoDsj016ySWZV+ONJzXHBgebxkEdndnDwNMLndP?= =?Windows-1252?Q?mQtmhSb+QbUPnaUWEwaW+JMNPcR/YaS9AwkG83CumOpLTkOlO5UTYokx?= =?Windows-1252?Q?eiufkwmwNNabtet2WxsFCoe+Yh0pumX+oFCEmE47mrN/YPOrG62h0W5i?= =?Windows-1252?Q?yxfJ9YUA4tzclI/o4DXfW6hhSffmVUhlF76lsPLFBhDoVOmcmZzpvN8a?= =?Windows-1252?Q?KV8j4MdL/rd2JSuAgZDaaSxsmdrNvKESq5DZm0Bq3iubNJJgw6ICrnAR?= =?Windows-1252?Q?iphTsVM8IGzuVxDEg2FqO/rzPPz2rs+8MohxLX80DSdqzBamEAHV/0mV?= =?Windows-1252?Q?vX5S1+XxPcK/2uBZlHY8v/FzJ6TPHx0nr31MA3lNTkBCmryH5lfpXR9L?= =?Windows-1252?Q?ZvqCNKBgBf6xQfz7//jZMyxBozyjfTrgQfOOUDbb1WKAz931YiplEcFs?= =?Windows-1252?Q?IgI+J+zcSjZIkSggB0LrxCuz/L8o2ePHv6W+CDfzFFPB9zYSwQrXVCKB?= =?Windows-1252?Q?gdPMJOGziYNDi152325BVztrdbrrpcCuSKxBkTMw2r9MtPXmJVakt9yu?= =?Windows-1252?Q?HbUxt3hREQr7pihKiOICd+F/tsTzxdT1TqsPL8sSAaxCozWQz3mjsOxJ?= =?Windows-1252?Q?sOFOFomJFbvGV/nxzQWc/DnAswUkQE7qRb7KSBA0DT6YZDy4s/vqUZpT?= =?Windows-1252?Q?l7e3o/uLUvrCoAR1P+NYxnyNPMEjrgDRKi8YBIqfzZJLT5oAus+m0cTL?= =?Windows-1252?Q?MPNxM5GAQ2NmayD4bnlwipu5kBQGznDW5unbphbwuO4jngtEmejtRVn0?= =?Windows-1252?Q?n/hzOalSfLJUMuV21hpV25EDbzQ1kofWiqSU58VLiUT+ZbLr7bjfHW1O?= =?Windows-1252?Q?meC7Va5+/jtOUEuDdQmu8bd7WJ4RqK5PL4KJGvWxqWXSiDV+RDhgARSF?= =?Windows-1252?Q?7D0sJTcAQKgyLs2b7/z97c6pFhgwgFyDtRxf5swE0AYHos4QZzMRnB81?= =?Windows-1252?Q?rfihO2OP3rAsHI5EY3nEmCgUT7LBZNTZnqGBQptsI2tBybhfPvtKu17f?= =?Windows-1252?Q?0ltj2+k3IZI3hwKWgbeMF8td?= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU0PR08MB7921.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(376014)(366016)(8096899003)(7053199007)(38070700021);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?Windows-1252?Q?/8jsyxakzB+uFaIL+n0KiMyGpk2XjXjQf5XGo3LgsMzj5OitgVk9Vo2x?= =?Windows-1252?Q?hjDjCLZzVT1JRfmp+cEX3FNHpo6H9Z9mT86suJb6JXH3aPMgrBHmG/kO?= =?Windows-1252?Q?JIHyNJ+jOs09EhSR47WDAausRaz+xssmRA9tXWSpYEwD/m0vwU9METnK?= =?Windows-1252?Q?aYViCbWeqitOQ1+W2lxHXGQxWuYb6/SkEkvNPdLYpznXm3rHJbZePIwI?= =?Windows-1252?Q?AQ0WfLFoN8KU9g8/ioC1dDpmgECMJVftIzV/pIhqXHqvg50Fhz0f9X4a?= =?Windows-1252?Q?R9CKxA5rvC/UgHVW4GorGSF/wlKj4xb5HnhWgGLohNEjeQHlarb+UqB5?= =?Windows-1252?Q?IVAF4QuJKsfD1r0EzWWHn6bzfzgKIynbzciT/tkAwj687kt37sZdofrb?= =?Windows-1252?Q?fjAhyOXwNcyjOnNP46DrZzpzBL9DH+h2+aeeb7JbD+ZvnblVajzgI067?= =?Windows-1252?Q?COa8WSUz2TMa93h3gLtMjxEhkDYH7h3Qmw4DkyKePUdJ8qSAiMijjqRN?= =?Windows-1252?Q?Do9lGmW9QY8bLl4/ECU8QSBxK/CD5osFEYKXnmeTKn9j9A6a1S9L7ClL?= =?Windows-1252?Q?ifjGrzheE3Lc9OgmJfcTQIOgFmAZRjdiCjLkYSakNnLLhiTuz7qoucwn?= =?Windows-1252?Q?NOiL9Rpp2jcS994Fsm48yPr42xxzWzHrIiAo5aV4n08idCeSVqOnP13X?= =?Windows-1252?Q?P7yG87EQxvMLAoD1HMJUDwp/XkWduv9vgGUMbs3mr8/Wh8wP6elYR/s8?= =?Windows-1252?Q?ckd9RaCz6l8Hc4CZRO87i2xLSTQlnxiUt7u3rBsj1Nw8rdVriSOTZ8V5?= =?Windows-1252?Q?2UXvmuYzPSdTQNw7g0NzpIJAUlQvg5u9c5F7oClbiXfP8xPY7R/PaNJ1?= =?Windows-1252?Q?owsakNLuP2iVg4rXFrnpUoSf0mobBaqgdv5cruYzGfpyW5/sxaF3q7dA?= =?Windows-1252?Q?Ay0JtwdzPymoj6EYDDgvTwDzENdk1QwcKMAcuZhb07UzGkSK2V58HhYM?= =?Windows-1252?Q?3OhxnlJNhTJOEwQ0TAdfWBdFFvb2Wjc/j7iDAaz/mgWp/ChPxJWhGjuZ?= =?Windows-1252?Q?XvQnqzMVo5Dqo/jQfEO2+TWnK9U0jqnTl9ZB1o5IxrQZxz04Qwih1hWE?= =?Windows-1252?Q?0J3RAEdqeLJJU+QOhUdS8bKwtGHotKNQIlszzboLFtVZa/OJltxDpFUH?= =?Windows-1252?Q?GlIcoB/LZyczkdeH55VsTcnewjs9WbhHN/hJs9zbhSBOrlsXpThjOl6S?= =?Windows-1252?Q?9pCPWedW89l1iwmA1Fo+gP8Zmapv7Lu2i357VuQS3L9vBqx7qmNfLzm9?= =?Windows-1252?Q?iJl6IlV805w7PQ2AherqC9Mn7iOsNoWBhamDMhFuc7OTZ3Mq3awKZqvL?= =?Windows-1252?Q?1uXVNzFbZO//XD99xHWTKkb10ckyPwKVH4W257T5lCBfwYRT15XVJJte?= =?Windows-1252?Q?DcqJu5iknSI7dB1aLNDQLm4f2kMLZtrC183n3iJZCBy50VBpnaxUMesx?= =?Windows-1252?Q?DPULnBuyTEas51JyrcW/GjUD4P001U5d/XSq5q6vdZHPV8D/fpvEdfKy?= =?Windows-1252?Q?ts4yVU5vOn1knBERZVvX0UEU/haGAB6F7rmihQUnV1lodwd5mjI1WaPj?= =?Windows-1252?Q?27jy0sWTs2ItzlZJ0FLJhLEqkME54RQRLKGRNiYJIKWJ7nRfRPF4MHa2?= =?Windows-1252?Q?70l1fbpnfnqmB+n3yWzL52KQsFa3r0nWSCmkTNU3dpU7jQ2Why2MHEwf?= =?Windows-1252?Q?wLtokW/YXHw2ld9Tp1Fln8gLK0DzjhoDOaYO3+lFwyB150O9g9puxGaR?= =?Windows-1252?Q?YPE2ej4AbSz5RHtoesVNXIG2oANuoEIw1/kBoZu/lzMenOqVlCKlF4P9?= =?Windows-1252?Q?Henl9jqVuuLjD6sJicVUUQOSA/aLCIO36DY=3D?= Content-Type: multipart/alternative; boundary="_000_DU0PR08MB7921A4C96214BA4517FD1E39A68EADU0PR08MB7921eurp_" MIME-Version: 1.0 X-OriginatorOrg: parlamentib.es X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DU0PR08MB7921.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 220bcc29-ad83-4ea8-034f-08de52944a0a X-MS-Exchange-CrossTenant-originalarrivaltime: 13 Jan 2026 11:09:58.3537 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: eb8f8b70-f944-47bc-a844-e35b86fd8b5f X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: YRFGghiIzYel10FaULAAhKLl5XZdFkyvg13/Mb63dk/jfGSBDFgy3S1l5fluRTkJdiNrkyQF44VuVIoOf3cyTA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB10123 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --_000_DU0PR08MB7921A4C96214BA4517FD1E39A68EADU0PR08MB7921eurp_ Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: quoted-printable On 13/01/2026 08:19, Gabriel Guillem Barcel=F3 Soteras wrote: Hi, We have a healthy PostgreSQL 15 instance (installed from the official Postg= res repository) running on Red Hat 9. It serves several databases for inter= nal SMB applications. The environment is stable=97apps perform well, disk u= sage is fine, and the system is not under heavy load. After integrating PostgreSQL into our monitoring system, I noticed warnings= related to VACUUM and ANALYZE. Some tables have never undergone these main= tenance operations, or the last run was 30=96200 days ago. These databases = have very few deletions, and many tables show no growth at all=97typical fo= r internal SMB apps. I know this topic comes up often, but should I schedule a monthly VACUUM + = ANALYZE via a cron or systemd timer, while still keeping autovacuum enabled= ? We=92re also monitoring table bloat, which is currently under 1%, suggestin= g that manual intervention may not be necessary and that autovacuum is doin= g its job when needed. From: Paul Smith* Date: Tuesday, 13 January 2026 at 10:50 To: pgsql-admin@lists.postgresql.org Subject: Re: VACUUM/ANALYZE Strategy for Low-Activity PostgreSQL 15 Instanc= e You would normally not need to do anything manually - autovacuum is suffici= ent. The main times anything else may be needed is if you do a mass delete = or update, in which case the autovacuum may not be updating "quick enough" = or you may want to do a "vacuum full" to recover disk space. What is your monitoring system looking at that is making it generate those = warnings? You need to see what criteria it is using, and then decide whethe= r those matter to you, or if they're false warnings that need adjusting som= ehow. Paul ------------------ From: Gabriel CheckMK, as Anton case, monitors several metrics with a PostgreSQL integrat= ion . In this case is last vacuum and ana= lyse. It generates a monit= oring item with pre-populated thresholds. You are not wrong at all. The lazy admin problem is that adjusting monitori= ng system on per-table basis is very time consuming, compared with a weekl= y manual vacuum + analyze that makes 'no harm' out of business hours. I thi= nk i will go the weekly vacumdb route, or I will have to deactivate VACUUM = and ANALYSE monitoring items. Thank you! --_000_DU0PR08MB7921A4C96214BA4517FD1E39A68EADU0PR08MB7921eurp_ Content-Type: text/html; charset="Windows-1252" Content-Transfer-Encoding: quoted-printable
On 13/01/2026 08:19, Gabriel Guillem Barcel=F3 Soteras wrote:
Hi,
We have a healthy PostgreSQL 15 instance (installed from the official Postg= res repository) running on Red Hat 9. It serves several databases for inter= nal SMB applications. The environment is stable=97apps perform well, disk u= sage is fine, and the system is not under heavy load.

After integrating PostgreSQL into our monitoring system, I noticed warnings= related to VACUUM and ANALYZE. Some tables have never undergone these main= tenance operations, or the last run was 30=96200 days ago. These databases = have very few deletions, and many tables show no growth at all=97typical for internal SMB apps.
I know this topic comes up often, but should I schedule a monthly VACUUM + = ANALYZE via a cron or systemd timer, while still keeping autovacuum enabled= ?

We=92re also monitoring table bloat, which is currently under 1%, suggestin= g that manual intervention may not be necessary and that autovacuum is doin= g its job when needed.
From: Paul Smith* <paul@pscs.co.uk>
Date: Tuesday, 13 January 2026 at 10:50
To: pgsql-admin@lists.postgresql.org <pgsql-admin@lists.postgresq= l.org>
Subject: Re: VACUUM/ANALYZE Strategy for Low-Activity PostgreSQL 15 = Instance

You would normally not need to do anything manually - autovacuum is suffici= ent. The main times anything else may be needed is if you do a mass delete = or update, in which case the autovacuum may not be updating "quick eno= ugh" or you may want to do a "vacuum full" to recover disk space. 

What is your monitoring system looking at that is making it generate those = warnings? You need to see what criteria it is using, and then decide whethe= r those matter to you, or if they're false warnings that need adjusting som= ehow.


Paul

------------------

From: Gabriel

CheckMK, as Anton case, monitors several metrics = with a PostgreSQL integration . In this= case is last vacuum and analyse. It generates a monitoring item with pre-popula= ted thresholds.

You are not wrong at all. The lazy admin pro= blem is that adjusting monitoring system on per-table basis is very time con= suming, compared with  a weekly manual vacuum + analyze that makes 'no= harm' out of business hours. I think i will go the weekly vacumdb route, o= r I will have to deactivate VACUUM and ANALYSE monitoring items.

Thank you!

--_000_DU0PR08MB7921A4C96214BA4517FD1E39A68EADU0PR08MB7921eurp_--