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 1w9sij-001qsq-2I for pgsql-hackers@arkaria.postgresql.org; Mon, 06 Apr 2026 22:47:01 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.96) (envelope-from ) id 1w9sii-00CXcJ-0i for pgsql-hackers@arkaria.postgresql.org; Mon, 06 Apr 2026 22:47:00 +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 1w9sih-00CXcB-2y for pgsql-hackers@lists.postgresql.org; Mon, 06 Apr 2026 22:47:00 +0000 Received: from mail-yw1-x112c.google.com ([2607:f8b0:4864:20::112c]) by makus.postgresql.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.98.2) (envelope-from ) id 1w9sig-00000000vdm-1fAE for pgsql-hackers@lists.postgresql.org; Mon, 06 Apr 2026 22:46:59 +0000 Received: by mail-yw1-x112c.google.com with SMTP id 00721157ae682-79a74765703so34372177b3.3 for ; Mon, 06 Apr 2026 15:46:58 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1775515618; cv=none; d=google.com; s=arc-20240605; b=NdlN0rkZ2DDvM7VSRXX+orW6ONfPZQ4U9N0aqP8psSnlo0qJE5i6E5S0A6at+CvlMm iehV85LCrQgMYjI+Bnu8jS4IdYawt3RusKb1H1OSbTQvd45GeCpno4qWg00JSeGpLwFB dJK/symiE0YWNHgSiVJrV8ieAZWWdUo8XF33SBpCY5E0Jfcpl+lVFqzY8ZOvyToWP40A WIPj6LjgEzuCb5Ku7wqHuvuLzhv4fjm+vLAwXEIp7daRRyND0HPQYsr16BdpuznE7yBn RLsNaLjw0L7gVrqnMHNNZK1AGhUeOysuUE0pn9VaB6YocTdC0xwpDnXMYcEaODucEKmw hcXA== 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=aw/CXRBVVawjFtc9rZxEEiforAAOrEG8Ywh2ap4vG8o=; fh=38TZ1ViyVe7k2s6YzeqzoCHQHnHr/J+bkHHVqFQiRhk=; b=YfOEFMSWgLm5qQ5hC6PxS73jiCh4GwJBFCzBqGyWo1Bkh7JuVJjJzsgrgr6x5m+gdP LLd3ECQkWEC9pV0Vkla9VW/TpPJk2GaakLoL4DG2uJKvZQLVpTFOMAQHpNCVHNwO59GD WHf85p3p/NQLtbITzwx0GUgMXSlyqbs8PGxLS/CgHIyh+GoAP22TxURcCcmlocs1GxDT rmP7jrsMmLlnY1Ppz5l5hAquqMbS9npBicgNrzwxglqmyvarUVMx36OF/vlS+dlJDLzz pgzrWziXGenoEvGeLpBzDgI/3k+oXYR/dZpYVzU2Q8U7qUITjxwZDahAdYik4+Iw10UB 99zA==; 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=percona.com; s=google; t=1775515618; x=1776120418; 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=aw/CXRBVVawjFtc9rZxEEiforAAOrEG8Ywh2ap4vG8o=; b=biPOCJY/8MMp7dnHiBrpkhBNuc4k+7gv2njcGJ9du3tJHN6tsmACNbmR9z4d9mzz0n /7HGkswtYWIvwGxcsV27ICSsZbsf+lBJ0GwfAz/h1ubjc9Y3iJf8e3jEoUC2KRJHC3l1 J0m5HTFgfgFBQtILzv1wYiI+nzXtyZVky/w9E= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775515618; x=1776120418; 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=aw/CXRBVVawjFtc9rZxEEiforAAOrEG8Ywh2ap4vG8o=; b=Ps2JgBJ+B4t5H56klCvVuFBZNBd4JEn+CKbzWLzY97/L9ERgvRVQvzhw2QNMBqyDtD 4rYEeA4zOkPhz0WjBdIcvgfnqXRl5u7Ze7SRfV3L7ZDXgCMuCNZYJz2av1iWwg2KQ051 6aviXoZqvDmPFKzHE5+g8mNdX2bpT5nj6/KzgxtijJvIPftqAwA2sj+jaY5JrUg4EEOa NHJvyA9kQMV09g+UXjsAaVFW5w9XDOr7C15QGyhVzEi/TtNJyVtT+t3KtqGDPlKCixHO DgpHKsJLcDhQbfAwNLJyaPo0ohvzlOwP+3073itHFuXSTdFwQndv81k9WJZ/ll12vQbt u/Dw== X-Forwarded-Encrypted: i=1; AJvYcCVVa0auVtHUM7pfCSW9AVeMkGoZ/lXNcAkZYO3mEs6E9x39976kQoV0TTnSvOJXW0mMeoFshGZuUjGGvgV+@lists.postgresql.org X-Gm-Message-State: AOJu0YyOsJHHIL/T/lADVL3sMRg+27x1GaT65JTvYmAgjGGra+pCs8BL dyYfNjz8I8lNfyqZ2hQBLOEGt6pdWa/NxBo0d98wGuEdM8+n1NgcZYryR/JEq85m7zwTQzwzvJL HfiIabYQNSg3OfCclyAnElB2xHHehYkJBYd3Eq/MPLV5wUIWpth4tKObddP8wEqVYCTxJobfa/0 4fKqr/U3EMnHXcveL1zYYXXtLrItVCTbhZQRSv0Y7U3y7j00IrdzXKOBI23HXWUZV4zEjJESruS w3o5pE3LcCW9fN4rg+m6QYCUknK0eLXRSuO7S3gQknQHZNmKkxF3+DpQB6QZwqFVNY= X-Gm-Gg: AeBDiesJRGfghIYALKY8cHAIVHHebUrS5jftjzGKaCwhDj4m4G+cRnSfV4XANLTJbfJ IjwwcIgZH2bjwfYaQYvaZaTf59XIyNjIrjIktuLHJWS+TO823G1bsyoRMWbosvfn3k+LYjC0IF8 oHYQU0uRXFrlNjVbJLZGWxfDsmHFSQZ+ToUzsFZrTq1fTQ0HtJsZo8vPBTLH27fYr8PYAx6wxXD UVNkEjTDtB2JHjgEnQWB1Xr0PKA/aASetSiz3FKRYqifwQ4Qz2u9DmtLtrtP0ZWhTrsbid2Eb63 Q1Vyw8/zWbP9Cbdf7brRTUb6KiOSXp7jFjmKXidnVaN/UL2rMm9hWrmz3uBlAb5YRiq6 X-Received: by 2002:a05:690c:dc9:b0:79a:6d65:c351 with SMTP id 00721157ae682-7a4d5565812mr160496237b3.36.1775515617659; Mon, 06 Apr 2026 15:46:57 -0700 (PDT) MIME-Version: 1.0 References: <57biou6l65r7gr4nunoe6lignz2x6m3w45gihoypaez4pc46di@txj3bakhj66l> <3xbje45m5knff52mye5dfnrjdnwv7it2bzmqac3jqe66fvop4a@xvhy6zx7n6sb> In-Reply-To: From: Zsolt Parragi Date: Mon, 6 Apr 2026 23:46:46 +0100 X-Gm-Features: AQROBzA2J9fCJln0okvBPRCGD_l4UkeEEtOUmm8n67TfxQUTC2yQV9FLb-41k4A Message-ID: Subject: Re: Stack-based tracking of per-node WAL/buffer usage To: Lukas Fittl Cc: Andres Freund , Heikki Linnakangas , PostgreSQL Hackers , Tomas Vondra , Peter Smith Content-Type: text/plain; charset="UTF-8" X-CLOUD-SEC-AV-Sent: true X-CLOUD-SEC-AV-Info: percona,google_mail,monitor X-Gm-Spam: 0 X-Gm-Phishy: 0 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk I couldn't find any issues with v15, all comments are stylistic/minor, except maybe the first one. + /* Abort handling: link in parent QueryInstrumentation's unfinalized list */ + dlist_node unfinalized_entry; Is it okay to store a pointer in shared memory, even if it seems to be always NULL there? #ifndef INSTRUMENT_NODE_H #define INSTRUMENT_NODE_H + +#include "executor/tuptable.h" +#include "nodes/execnodes.h" + Is it okay to incude files in the middle of the file, is there a good reason why these can't be at the top of the file? + * Recurse into children first (bottom-up accumulation), and accummulate + * to this nodes instrumentation as the parent context. Two typos (accumulate / this node's) #define RELEASE_PRIO_FILES 600 #define RELEASE_PRIO_WAITEVENTSETS 700 +#define RELEASE_PRIO_INSTRUMENTATION 800 This is mainly a generic observation, not strictly related to this patch, but this list could use some explanation which of these priorities are actually required by dependencies, and which are just "put the new entry at the end of the list".