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 1vuvLI-00D4xV-1f for pgsql-hackers@arkaria.postgresql.org; Tue, 24 Feb 2026 16:33:00 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1vuvLH-002CRt-0Y for pgsql-hackers@arkaria.postgresql.org; Tue, 24 Feb 2026 16:32:59 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96) (envelope-from ) id 1vuvLG-002CRl-2q for pgsql-hackers@lists.postgresql.org; Tue, 24 Feb 2026 16:32:58 +0000 Received: from mail-ej1-x62d.google.com ([2a00:1450:4864:20::62d]) by magus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1vuvLD-0000000155l-2kFQ for pgsql-hackers@lists.postgresql.org; Tue, 24 Feb 2026 16:32:58 +0000 Received: by mail-ej1-x62d.google.com with SMTP id a640c23a62f3a-b8845cb5862so940153566b.3 for ; Tue, 24 Feb 2026 08:32:55 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1771950775; cv=none; d=google.com; s=arc-20240605; b=gguKGtDoB/ZYK9DLDolx7N+Br8UH9bZU5Ancy/vULz7UCy7E5ujUcsosj9nqgRSGtx bEJ98aQqeKRc2EJcLGYXISJbMQXGYgLHmyFEHEGDjt04z7ces860UZWp0dE7wekTX8dd 8WNB4W4Ren8C+9pbogpt1zHPqy573LPayzI6VwZ41wV7lrisfJQ5+efHQ2ggntf0tM90 jNiuahW2KqrleE9VPWZaa6ZsaR9gK/6na8RSCd1n86QwbSTWFta61DgVxAv5adOz6gQr UUIQTGdHGS5wyFqiwMyFZCGBm/lFzPLvz1MQZrImNoZLhcFbpcbxWeT71Us1PYHCTc4n sC3Q== 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=Nq5QIuCZ5BpQUhK24EeJcQswg7P4jN6BSgh2QwJOOAw=; fh=ETYRGyI/E4lxqoEwBzbHb4vPEnBx8lzG6TBtPu8+nV0=; b=jatuNuunVI9+8gQHLHSYq2xLWY8JTROe6mfKs2Rj0lHlDIkNhidF8iSH53kZuvNL8v Zf7l0Z4cxsVty5lWrSbB8oK5ZTun0nurfnW9r3KSBbc7JzK2ZPBiZEgr9RJXY077kbvF WSOYq7rDljuESt/R34Eia9SFgxztJv2Z/SuHgbNo+xe4blBBlN5NFxrmgIP+qI0STd3a qatZiOLLlUKvdJa3gdV0NOS3DG2BJ5Vbi4GMvNLzHijAffmBdmLfx5RMOvB7Y8m9gYTv CANefGYct06mS61Hqs7pBpDgNbIZ8+pIXiCqAr/amTUE8XzrUQe4sn1PCoOC8FFxGCMy zbxQ==; darn=lists.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=1771950775; x=1772555575; darn=lists.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=Nq5QIuCZ5BpQUhK24EeJcQswg7P4jN6BSgh2QwJOOAw=; b=PyDi6vxwdR3tXS8LUyGoxgk8ybPTj8cToCaVYSyHsSFFgSCDIczmEOpQ8r2xNbO6uF J5Mjk7xiNWnnZWtj7htGxhklV8VfhLQqJfmSJmItcveMoaJuOsHH9WuHDxH5DbRzulsc ej5otkzQHcrQH5RCLj/ak0j+cYKv6rQAmfyDgApF3TIFdka/ekwNFpBlScQdMyDizQ+y SK+gyspknuP+GzMyrFbX6Ew3i56KFJ7E3z2y/up9Jk7GfUtgn8B1RxHjAUfzvFPPLe3y +kjXCMFzO+GTT7Nz8s642rWhx5RkbI4ugbLi8tDk7uverZuFAOAaAZuKAjQMgm9sOwSD xylQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1771950775; x=1772555575; 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=Nq5QIuCZ5BpQUhK24EeJcQswg7P4jN6BSgh2QwJOOAw=; b=l3uD8VRLQnpB/SncENa1W3KtmQzWeLDEwXX6UXgsQ+9lBQRYSgn1d/QqysM4HGFb0u ke0TtXOfkG3IJSvt1+eOGreZ3HGgYTdSKGEKirZST+y/LWVNR0Lei9UqNu7WgrGP6quS A7j2+nCMU6ABBYYxc59tS3wAdw32zHUyOH8FUlmtu6qk7G/wvmHaIbq53aQEjAadV4I0 tugicUzP2wBFCGPM+IN9t2jQ8sY4n7xg9wObggScpIG9zw84KKGs1tAfDiSI2NrmR25i h+wE3oD6BU3QVsd1bvEWn6cTGJ2Domw3GBYUbHG0v73d8XOayk3fzbR2XsW7UzzQETsa xe1A== X-Forwarded-Encrypted: i=1; AJvYcCWek/PIIMeztxpad8kTvn0XjMwRmb4PwKKlr22WTXCFyYbQvP9YRGaRUZ9XqY7Shrl4skwv8CxMWHUDOzuN@lists.postgresql.org X-Gm-Message-State: AOJu0YzLvZBM1V3Qt8qKNKXJHFg5CQNJrgNVPSRNItf5l4zZ4lluxo5T /TKs/7KF/glNw2qoqaFVdBsGKo6QS/wBvO23hA4pmro9rDCvXf3ZKrqeSpbv+j3EZ3TjhypsrtV yVP2mrXUGCbFzQ1m7fYaaaDcjrKu2uAw= X-Gm-Gg: ATEYQzxnlAh7tb1c8BBom8zHcqkJ/T5TA/DBp3aKIZPqBzin/YzxrNcOBI7hTg/43aK CN+4CoOvhxWwT6ZIT8SmZ3T38BD01gKe8AWBuXBMt5AcfzlEM/09BwRMlxjqOgG5lPtQ/ABXuu0 2cXZAL1vWVNI2CXoIDWxwsM/PC6FneQdQsOPeWk/RZxGWnqwCj+UvJm98U4TDYzkye1uwRUhEEs dC0r2G6uUorJgDRYgBQBiDyVgQZNJJIWX3oj9YuZOVeOoSx3+clzdCBGjzMfD4Cae63a27BaPxl yxEb9JfI16chbar9 X-Received: by 2002:a17:907:3f25:b0:b93:3c05:8fbf with SMTP id a640c23a62f3a-b933c058fe5mr52867666b.2.1771950774790; Tue, 24 Feb 2026 08:32:54 -0800 (PST) MIME-Version: 1.0 References: In-Reply-To: From: Sami Imseih Date: Tue, 24 Feb 2026 10:32:43 -0600 X-Gm-Features: AaiRm518LX1odl8obDle_ePOsxYO994wriB1ZHZy40gT8WFUquLyt9oKCQJcEmQ Message-ID: Subject: Re: Flush some statistics within running transactions To: Bertrand Drouvot Cc: Michael Paquier , Fujii Masao , pgsql-hackers@lists.postgresql.org, Zsolt Parragi Content-Type: text/plain; charset="UTF-8" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk > > 2) The need for all the stats to call pgstat_schedule_anytime_update() > > in strategical places. This is less of a burden compared to 1), but > > this leads to more complications in these code paths with the coding > > requirements, especially for custom stats kinds. > > I think that's solved with Sami's proposal for variable stats kind (to flush or > schedule when the session is idle). Just a clarification. It is "to schedule a flush when the transaction becomes idle" PGSTAT_IDLE_INTERVAL already deals when the session is idle. -- Sami Imseih Amazon Web Services (AWS)