From: | Alexey Bashtanov <bashtanov(at)imap(dot)cc> |
---|---|
To: | Peter Eisentraut <peter(dot)eisentraut(at)2ndquadrant(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: log bind parameter values on error |
Date: | 2019-01-02 22:53:12 |
Message-ID: | ad08f6a3-e38c-f851-a5a2-0bf68d1d7f72@imap.cc |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
> That sounds like a plausible approach. Have you done any performance
> measurements?
No I haven't yet
> In your patch, I would organize the changes to the portal API a bit
> differently. Don't change the signature of CreatePortal().
okay
> Get rid of PortalSetCurrentTop() and PortalClearCurrentTop().
I'll remove them from Portal API, but possibly have them in postgres.c
if you don't mind, just to avoid code duplication.
Renamed and maybe even inlined.
> Just have a global
> variable CurrentPortal and set it directly. And then change
> GetCurrentPortalBindParameters() to take a Portal as argument. This can
> all happen inside postgres.c without changing the Portal APIs.
Okay, will do
> In fact, maybe don't use the Portal structure at all and just store the
> saved textualized values inside postgres.c in a static variable.
Unlike SQL, parameters may spend much more memory, so I'd have them
in portal memory context to make sure the memory is released earlier
rather than later.
Tracking individual variable lifetime like we do with debug_query_string
sounds doable but a bit non-straightforward to me,
see e.g. the tricks we do with transaction commands.
Also, I'd like to avoid early forming of the error string, as we may
need to combine
them differently in future, e.g. when logging in various logging formats
or languages.
One-by-one pfree-ing doesn't look tempting either.
Do you think it would be acceptable to leave them cached in parameters
structure?
Best,
Alex
From | Date | Subject | |
---|---|---|---|
Next Message | Thomas Munro | 2019-01-02 23:29:40 | Re: pg11.1: dsa_area could not attach to segment |
Previous Message | David Rowley | 2019-01-02 22:37:59 | Re: pg_dump multi VALUES INSERT |