| From: | Michael Paquier <michael(at)paquier(dot)xyz> |
|---|---|
| To: | Lukas Fittl <lukas(at)fittl(dot)com> |
| Cc: | Bertrand Drouvot <bertranddrouvot(dot)pg(at)gmail(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>, Andres Freund <andres(at)anarazel(dot)de>, Ahmed Gouda <gouda0x(at)gmail(dot)com>, Bernd Reiß <bd_reiss(at)gmx(dot)at> |
| Subject: | Re: Fix cumulative WAL statistics double-counting from parallel workers |
| Date: | 2026-11-04 08:17:30 |
| Message-ID: | aurqGsol1USeiIWv@paquier.xyz |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers |
On Tue, Nov 03, 2026 at 11:49:03PM -0800, Lukas Fittl wrote:
> I think ultimately our problem is that we need some way to "attach"
> the worker WAL/buffer activity to the right executor node (i.e. the
> one that caused a nested statement to be called that had worker
> activity), and that node then needs to be able to accumulate that
> activity upwards to parent nodes, potentially other parent statements,
> and the query-level instrumentation, all without affecting the global
> top value like it does today.
Could it help if the instrument structure had a secondary set of
fields for the worker data, then, when you want to pass its
information across the stack? Or would that impact the performance of
InstrStopNode() as well? For example, for pgWalUsage just a
pgWalUsageWorkers? (If I'm missing something and I am not in line
with your previous arguments, sorry, it's been a long day and it's the
end of the so-said day..)
--
Michael
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Zsolt Parragi | 2026-11-04 08:19:48 | Re: Emptying oauth_validator_libraries doesn't stop OAuth logins |
| Previous Message | Jim Jones | 2026-11-04 08:06:14 | Re: Reject access to unlogged tables in contrib modules |