From: | Jaime Casanova <jaime(dot)casanova(at)2ndquadrant(dot)com> |
---|---|
To: | Konstantin Knizhnik <k(dot)knizhnik(at)postgrespro(dot)ru> |
Cc: | Tomas Vondra <tomas(dot)vondra(at)2ndquadrant(dot)com>, Ryan Lambert <ryan(at)rustprooflabs(dot)com>, Thomas Munro <thomas(dot)munro(at)gmail(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org>, Bruce Momjian <bruce(at)momjian(dot)us>, Dimitri Fontaine <dim(at)tapoueh(dot)org> |
Subject: | Re: Built-in connection pooler |
Date: | 2019-09-05 22:01:01 |
Message-ID: | CAJGNTeNKMpRj2=C1tx=_LuGcNsd+G85Mc5rQA82bRs83bSvY3Q@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Thu, 15 Aug 2019 at 06:01, Konstantin Knizhnik
<k(dot)knizhnik(at)postgrespro(dot)ru> wrote:
>
> I have implemented one more trick reducing number of tainted backends:
> now it is possible to use session variables in pooled backends.
>
> How it works?
> Proxy determines "SET var=" statements and converts them to "SET LOCAL
> var=".
> Also all such assignments are concatenated and stored in session context
> at proxy.
> Then proxy injects this statement inside each transaction block or
> prepend to standalone statements.
>
> This mechanism works only for GUCs set outside transaction.
> By default it is switched off. To enable it you should switch on
> "proxying_gucs" parameter.
>
>
there is definitively something odd here. i applied the patch and
changed these parameters
connection_proxies = '3'
session_pool_size = '33'
port = '5433'
proxy_port = '5432'
after this i run "make installcheck", the idea is to prove if an
application going through proxy will behave sanely. As far as i
understood in case the backend needs session mode it will taint the
backend otherwise it will act as transaction mode.
Sadly i got a lot of FAILED tests, i'm attaching the diffs on
regression with installcheck and installcheck-parallel.
btw, after make installcheck-parallel i wanted to do a new test but
wasn't able to drop regression database because there is still a
subscription, so i tried to drop it and got a core file (i was
connected trough the pool_worker), i'm attaching the backtrace of the
crash too.
--
Jaime Casanova www.2ndQuadrant.com
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
Attachment | Content-Type | Size |
---|---|---|
gdb-bt-core-drop-subscription.txt | text/plain | 1.7 KB |
regression-parallel.diffs | application/octet-stream | 464.1 KB |
regression.diffs | application/octet-stream | 466.9 KB |
From | Date | Subject | |
---|---|---|---|
Next Message | Chapman Flack | 2019-09-05 22:06:18 | Re: Fix XML handling with DOCTYPE |
Previous Message | Andres Freund | 2019-09-05 21:32:01 | Re: AtEOXact_Snapshot timing |