From: | Alexander Korotkov <aekorotkov(at)gmail(dot)com> |
---|---|
To: | Daniel Gustafsson <daniel(at)yesql(dot)se> |
Cc: | Mikhail Gribkov <youzhick(at)gmail(dot)com>, Robert Haas <robertmhaas(at)gmail(dot)com>, Andres Freund <andres(at)anarazel(dot)de>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Greg Nancarrow <gregn4422(at)gmail(dot)com>, Ivan Panchenko <wao(at)mail(dot)ru>, Teodor Sigaev <teodor(at)sigaev(dot)ru>, Ibrar Ahmed <ibrar(dot)ahmad(at)gmail(dot)com>, vignesh C <vignesh21(at)gmail(dot)com>, Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org>, Amit Kapila <amit(dot)kapila16(at)gmail(dot)com>, Masahiko Sawada <sawada(dot)mshk(at)gmail(dot)com> |
Subject: | Re: On login trigger: take three |
Date: | 2023-09-30 08:40:23 |
Message-ID: | CAPpHfdvVUxhgQ3hsCRN3anePSX13EBT=MNUJWBVVr_vpwxDAKQ@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Fri, Sep 29, 2023 at 1:15 PM Daniel Gustafsson <daniel(at)yesql(dot)se> wrote:
> > On 28 Sep 2023, at 23:50, Alexander Korotkov <aekorotkov(at)gmail(dot)com> wrote:
>
> > I don't think I can reproduce the performance regression pointed out
> > by Pavel Stehule [1].
>
> > I can't confirm the measurable overhead.
>
>
> Running the same pgbench command on my laptop looking at the average connection
> times, and the averaging that over five runs (low/avg/high) I see ~5% increase
> over master with the patched version (compiled without assertions and debug):
>
> Patched event_triggers on: 6.858 ms/7.038 ms/7.434 ms
> Patched event_triggers off: 6.601 ms/6.958 ms/7.539 ms
> Master: 6.676 ms/6.697 ms/6.760 ms
>
> This is all quite unscientific with a lot of jitter so grains of salt are to be
> applied, but I find it odd that you don't see any measurable effect. Are you
> seeing the same/similar connection times between master and with this patch
> applied?
Thank you for doing experiments on your side. I've rechecked. It
appears that I didn't do enough runs, thus I didn't see the overhead
as more than an error. Now, I also can confirm ~5% overhead.
I spent some time thinking about how to overcome this overhead, but I
didn't find a brilliant option. Previously pg_database flag was
proposed but then criticized as complex and error-prone. I can also
imagine shmem caching mechanism. But it would require overcoming
possible race conditions between shared cache invalidation and
transaction commit etc. So, that would be also complex and
error-prone. Any better ideas?
> A few small comments on the patch:
>
> + prevent successful login to the system. Such bugs may be fixed by
> + restarting the system in single-user mode (as event triggers are
> This paragraph should be reworded to recommend the GUC instead of single-user
> mode (while retaining mention of single-user mode, just not as the primary
> option).
>
>
> + Also, it's recommended to evade long-running queries in
> s/evade/avoid/ perhaps?
Fixed.
> Thanks for working on this!
Thank you as well!
------
Regards,
Alexander Korotkov
Attachment | Content-Type | Size |
---|---|---|
0001-Add-support-of-event-triggers-on-authenticated-l-v42.patch | application/octet-stream | 22.8 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Joe Conway | 2023-09-30 12:47:00 | commitfest app down for repairs |
Previous Message | Bruce Momjian | 2023-09-30 02:34:41 | Re: document the need to analyze partitioned tables |