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 1w2dUx-000Soq-1w for pgsql-hackers@arkaria.postgresql.org; Tue, 17 Mar 2026 23:06:51 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1w2dUw-005ygU-0Y for pgsql-hackers@arkaria.postgresql.org; Tue, 17 Mar 2026 23:06:50 +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 1w2dUv-005ygM-2L for pgsql-hackers@lists.postgresql.org; Tue, 17 Mar 2026 23:06:49 +0000 Received: from mail-wm1-x32e.google.com ([2a00:1450:4864:20::32e]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1w2dUs-00000000GQt-1tCt for pgsql-hackers@postgresql.org; Tue, 17 Mar 2026 23:06:48 +0000 Received: by mail-wm1-x32e.google.com with SMTP id 5b1f17b1804b1-48534237460so67373135e9.3 for ; Tue, 17 Mar 2026 16:06:47 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1773788806; cv=none; d=google.com; s=arc-20240605; b=lbK0rtzi6fzZnTMfaw2Jp6MdgqBpn4mDKsz7qnWfm2wtuH2BWYaCakyyEe9iHBvSq2 7K+a7rSLAUJ8HIDgqow7KTDOOgRrhUkagbSbuRewtpgkG8xMpGkpPNVq8ZHkv8QlDHer dy/8n+F0HHDLG+8rOTk8e2C+H6tFxYEL6SdlPneeYcpYRbg/QR8NGJwjODd99f58U0+0 IGdqVUWGgG7z8Vni+P2ZFsqszNOMWT+YsAuJ4QIs+uvC9La/8KX1z7cfNITX2YTKgEks JrXzsJ5FRwFmzCt5ULYOTYKSRYYyX2kFExbvo0lNfo0qq+7FX+iHkOb+E6lrZrvN6idx w5Jg== 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=20de+xDV+AyzCGrWXECoPncHmz3pG9CloNvx6ZJ15Iw=; fh=fQgepamH/x/XomcQhayt+D7IKmV39DP+xiOvqtXG8gA=; b=aT8TWsklifb8sHG74XNTsln7xTq099kNg73w01/3kHNN4DYZZmkoVQvA1O2MJyPalD DSlCi6f7iydLdQ6nJ3PdHaIwCby9H+oOGGNFcnMOVoYM+NrxFrc5UXEvDdTCUFnBak84 nl+VQChLuir4Tmr0GlPRnvbXUad7y1LM1znGAEavmGxemoYC2PtVzP40u+lzMeBYvt9d Y4bUysKxcv7S2gSIAsegmtFqB7waxtE9w0HM8Fnqu8HgZ0YiCcbaYNLjS0jBr/BDjo+K yS3U1u6erEqnGb6JWwcC74no9biW4yihMloPf9u4iCUU91viOFnYwhSjOLPrgtkvYml8 YWDQ==; 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=1773788806; x=1774393606; darn=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=20de+xDV+AyzCGrWXECoPncHmz3pG9CloNvx6ZJ15Iw=; b=fy8tiFkjEmpp8DX85H9QX96J/RL9JVP32zpunqUhqd4p512soYZDBu/7QS/f5KWXQP yiQZLLAV8S7Uy31+XSwt1X0mZi7pdUFYjrJqsGRiHms3VBUUD35HvpLmoHotca65mrMn 69jj2le1nz9Jp3arf5Gl/ONaoFWGGtMfmYPQS0hD1DMCpmNWgRZK6zgLog93U21fvmtN WK8ibTkXe3MK8ClM+uVDtcAcw4Vmg7egMpbFHuf9qYzjAr+sulX80QlLZa1jVQU9mM0r IDP8FELUxSk83tfOTySNbzILPnjnzHfuEhTxqZaKF+ER6i8IOXPe5TmFj+a+MnTNEjC4 D8Kg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1773788806; x=1774393606; 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=20de+xDV+AyzCGrWXECoPncHmz3pG9CloNvx6ZJ15Iw=; b=Og0Vmkd8iOE8s/auSSPOLAaByJ92IMOSkfq8ABI6k40rc+TJofmCBVAco6oeM06nJy wpszLqVvZZDPH/o1CsdlViGMngWOrGGc0LWM2EimyMHU7ElBQDFjqzl4QvdQZLT9XwZf o+dOgyNm0YmqLmtn0+C7V9LU3225kwoZY/nU5sDoHGx3KEETBIpQdhQNQzjfEbLcp9l0 jsyXR8UhRhGTic3h290HenpftIK2q2hBCb8XHSufjyUeBW+9piup2g1Zfo9tjGraF6Wi fPBg3hhLlqXhgT6TRFCP81Vv1yKqSowf/N/5LH4u6G1bxWy4cfLtEp9Q4I98vRJSnjfc tajQ== X-Forwarded-Encrypted: i=1; AJvYcCU963c/3hwv8BF/6jZX20YdstahFRgwKcym2p36dRDrg6gJO8shtBESoMBPQSGContXsKbe3b/I8y/BEhBJ@postgresql.org X-Gm-Message-State: AOJu0YxPLoogVOW97Ze1F0/SEYpy3ZuvKOE7NqjTXAwHO9e2O7POx6ZE NWiMBiGKmeTSvJQEUgjyPnxEZ7UIPHHZjtPgwPXCvIEsqTRnFhhEajdnvA5vZ24f8ph8Kf4vvng PZ979Womg4jMZ18rz9dcC9ZQSwjt1vic= X-Gm-Gg: ATEYQzwD0Ut0QfLSPPzitjvxGTRHK9jgK3gCtvUmyHRZg5TvUjjzfuM1uginrM22I0Q t+mf6o8rl0nrB/0jusG8Rndx5ycpj1QgwJbNQgg46gMN4TCifXV/Lz+uIDWILv5XKv5A1g/m/Zi FCYIu6QEy1u2xstX523kldMTwiVfxvRQEZT49Po27ZFez0BkAeTeRc+GKBSFrIa0Ru+33oMstvJ vqe5mxgH1lebU4UxErsabd+kwiSZOgsSC0ljhCYTVANNlu6UepV0RupvLaxSEyC3DxyskzOfYgK pyVfd/U4mGxxmCO2M/I1zJDrIQiNlLVHPcrcUGLbJywNke9MIcMVU/gbwEjkSZ1Sx6s4ux6AhA= = X-Received: by 2002:a05:600c:19d2:b0:482:eec4:76d with SMTP id 5b1f17b1804b1-486f44435c8mr21454705e9.17.1773788806376; Tue, 17 Mar 2026 16:06:46 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: David Rowley Date: Wed, 18 Mar 2026 12:06:34 +1300 X-Gm-Features: AaiRm52JExVuNP2Xb7HtqbWFwmuVGJ4_4leEAaNLIIqM6udlPUfxd3Gf1fBVFpM Message-ID: Subject: Re: another autovacuum scheduling thread To: Nathan Bossart Cc: Sami Imseih , Robert Haas , Robert Treat , Jeremy Schneider , pgsql-hackers@postgresql.org Content-Type: text/plain; charset="UTF-8" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk On Fri, 13 Mar 2026 at 08:20, Nathan Bossart wrote: > I'm debating whether I should move forward with committing this [0] for > v19. On one hand, I think I've addressed all the latest feedback, and I'm > not aware of any sustained objections to the approach. But on the other > hand, there hasn't been much discussion since November (my fault), and I > can't quite tell if this patch has enough support. At the moment, I'm > leaning towards committing it, but I'm curious what folks think. I think it would have been better to have done this about 3 months ago, but I think it's probably still fine to do now. Feature freeze is still quite a long way from release. I do expect that the most likely time that someone would find issues with this change would be during beta or RC, as that's when people would give PostgreSQL production workloads to try out. During the dev cycle, I expect it's *mostly* just hackers giving the database toy workloads in a very targeted way to something specific that they're hacking on. Anyway, now since you've added the GUCs to control the weights, there's a way for users to have some influence, so at least there's an escape hatch. I think the GUCs are probably a good idea. I expect the most likely change that people might want to make would be to raise the priority of analyze over vacuum since that's often much faster to complete. We know that some workloads are very sensitive to outdated statistics. On the other hand, we shouldn't be taking adding 5 new autovacuum GUCs lightly as there are already so many. If we are going to come up with something better than this in a few years then it could be better to wait to reduce the pain of having to remove GUCs in the future. I don't personally have any better ideas, so I'd rather see it go in than not. I didn't look at the patch in detail, but noticed that you might want to add a "See Section N.N.N for more information." to the new GUCs to link to the text you've added on how they're used. Do you think it's worth making the call to list_sort(tables_to_process, TableToProcessComparator) conditional on a variable set like: sort_required |= (score != 0.0);? I recall that someone had concerns that the actual sort itself could add overhead. David