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 1tUxDa-0047iU-FS for pgsql-hackers@arkaria.postgresql.org; Tue, 07 Jan 2025 00:13:10 +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 1tUxDZ-00F17D-GA for pgsql-hackers@arkaria.postgresql.org; Tue, 07 Jan 2025 00:13:09 +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 1tUxDZ-00F16m-63 for pgsql-hackers@lists.postgresql.org; Tue, 07 Jan 2025 00:13:08 +0000 Received: from mail-ed1-x52c.google.com ([2a00:1450:4864:20::52c]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.96) (envelope-from ) id 1tUxDW-000Evy-2U for pgsql-hackers@postgresql.org; Tue, 07 Jan 2025 00:13:07 +0000 Received: by mail-ed1-x52c.google.com with SMTP id 4fb4d7f45d1cf-5d3ecae02beso18846909a12.0 for ; Mon, 06 Jan 2025 16:13:06 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1736208785; x=1736813585; darn=postgresql.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=QiKKti/gC1CG2LEWkjX7W4i7EVXTQZq0yp7I9NzDSEE=; b=SibOFgK49qefi7ZUjr7CrQhzYQXJe+10wUDFPtcBermVUUyMeiDdhN5Um9cvjGC63n D44bPLUipffb3GqI+Z4aqu5vmF5qR3JIX2d4WLphHNLoFlq3t5+28Wc/hdoSwgxuh2Bi xtOtzezXbOnIdCTWRmHnslWngHJIigACg8PrTmJwWd8Z4fEsOMS9bgWpR+1RYDPlWnq5 u5QU6cI+7cqq1Y9aHBeUF9vzaoibjXWndBJSOZ3ljql1S3xbzEvPGBMBeNAF32oemkhH hVd7pQ29SpTbbFNEOr5FpELlPz73BKxuQBWeGRekKoljih8xTx3COyZqfzaaOqdiB7EZ Voug== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1736208785; x=1736813585; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=QiKKti/gC1CG2LEWkjX7W4i7EVXTQZq0yp7I9NzDSEE=; b=PROwOaMUIVOAkU+sCWyO/STEhSUlBYjKZcm5t5ED95nn11qwL92Gb/4OxpoLzIABiy 4S9FvzEkENxFhFBAzZdUlUboa+V0y8L/OErQAUvC+QmemeNFvGGMsjXD3D9A6Fxtj6Dg eyC/pMfszp26yjzdR2cooQT5YMxmlzmAeUK+5pexQ2cztIu0aZvQu0nt7jetN+EUBeXq kIbousL7mrgKDTD34kygC3ja03akPnbUZ+uZNbfi8VbBAyzBtF4KUYEZVbnHqIIH8EOg 39+iTpoQ4yB+0fDJpA08iWbaOlyO9BvG2be1j9ARaHy+m5CFIQmhTK127i700eew9Pm3 SCIg== X-Gm-Message-State: AOJu0Yyd79yY6Ob53UnCCcJqI0bN4tsymVTQRXXnayy/JDthByJFCFXw cJ5RLwPMusHkrSXY3bScwfNRALRzl994Gvbs5gNaOGWwQ1DLrSgPz1kXYkOz0RFzwiOWCVAtJGM 21vhCjb7e3zdbbyh1QG+Muj/mDF1Lqu/uEyw= X-Gm-Gg: ASbGncvQWfzX9JaYNIjgWBlEbXgRkpCscPLuzbbGgApWdbmRHRryQytUfuq9BZuTDI+ b1htWYRkleZoEOnbnx7Pl4HOXmTnqbTP3kDUw8HI0IJIGXiFEl+E4zgivuW9b9+G+lG9uY92+ X-Google-Smtp-Source: AGHT+IFAA5CdIBuFK/kv3i1yoVSJ96RInSFgucQqnaot26yxDdU9hbDCeR+B74Rm8AXbvhhEzX13pgyDOT3pBTqng3o= X-Received: by 2002:a05:6402:401b:b0:5d2:7456:9812 with SMTP id 4fb4d7f45d1cf-5d81ddfbe2fmr65100329a12.22.1736208784486; Mon, 06 Jan 2025 16:13:04 -0800 (PST) MIME-Version: 1.0 From: Melanie Plageman Date: Mon, 6 Jan 2025 19:12:53 -0500 Message-ID: Subject: Moving the vacuum GUCs' docs out of the Client Connection Defaults section To: Pg Hackers Content-Type: text/plain; charset="UTF-8" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk I was reviewing all the vacuum related GUCs, and I noticed that they fall into three main subsections of Chapter 19 (Server Configuration) in the docs [1]: Automatic Vacuuming [2], Resource Consumption [3], and Client Connection Defaults [4]. The last one I find pretty confusing. vacuum_freeze_min_age, vacuum_freeze_table_age, vacuum_failsafe_age and their multixact equivalents are all in the Statement Behavior subsection of the Client Connection Defaults subsection. I could maybe see a justification for this if these GUCs only affected VACUUM statements -- but that's not the case. All of these GUCs affect the behavior of both manually invoked vacuums and autovacuums (with some caveats about precedence when equivalent table storage parameters are specified). But maybe there is some other reason they are documented there that I am missing. If not, maybe we should fix it? I'm not totally sure what the solution should be. Perhaps we rename the "Automatic Vacuuming" subsection "Vacuuming" and then make "Automatic Vacuuming" a sub-subsection? And move the vacuum-related GUCs from client connection defaults to "Vacuuming"? - Melanie [1] https://www.postgresql.org/docs/17/runtime-config.html [2] https://www.postgresql.org/docs/17/runtime-config-autovacuum.html [3] https://www.postgresql.org/docs/17/runtime-config-resource.html [4] https://www.postgresql.org/docs/17/runtime-config-client.html