Re: [Proposal] Adding callback support for custom statistics kinds

From: Michael Paquier <michael(at)paquier(dot)xyz>
To: Peter Eisentraut <peter(at)eisentraut(dot)org>
Cc: Sami Imseih <samimseih(at)gmail(dot)com>, Chao Li <li(dot)evan(dot)chao(at)gmail(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: [Proposal] Adding callback support for custom statistics kinds
Date: 2025-12-17 08:11:19
Message-ID: aUJlp1DMiTjOQvG3@paquier.xyz
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Wed, Dec 17, 2025 at 08:03:36AM +0100, Peter Eisentraut wrote:
> So it seems to me that either the callbacks API needs some adjustments, or
> this particular implementation of the callback function is incorrect.

Hmm, you are right that this is not aligned. This can be improved
with one change for each callback:
- It is OK with from_serialized_data() to manipulate the header data,
because we want to fill a portion of the shmem data with extra data
read from disk (the module wants to add a reference to a DSA stored in
the shmem entry, read from the second file). So we should discard the
const marker from the callback definition.
- The const usage is OK for to_serialized_data(): it is better to
encourage a policy where the header data cannot be manipulated. So
the const needs to be kept in the definition, but I also think that we
should change the module implementation so as the cast to
PgStatShared_CustomVarEntry is a const.

These changes result in the attached. Sami, what do you think?
--
Michael

Attachment Content-Type Size
custom-stats-const.patch text/x-diff 2.0 KB

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Michael Paquier 2025-12-17 08:19:33 Re: Fix and improve allocation formulas
Previous Message Chao Li 2025-12-17 07:56:18 Re: Proposal: Cascade REPLICA IDENTITY changes to leaf partitions