| 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 |
| 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 |