From: | Andres Freund <andres(at)anarazel(dot)de> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | Rick Otten <rottenwindfish(at)gmail(dot)com>, ronan(dot)dunklau(at)dalibo(dot)com, PostgreSQL mailing lists <pgsql-bugs(at)postgresql(dot)org>, Amit Kapila <amit(dot)kapila16(at)gmail(dot)com>, Robert Haas <robertmhaas(at)gmail(dot)com> |
Subject: | Re: your mail |
Date: | 2017-08-08 20:18:38 |
Message-ID: | 20170808201838.vt5lyujd3fvgtxyq@alap3.anarazel.de |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs |
On 2017-08-08 16:15:15 -0400, Tom Lane wrote:
> Andres Freund <andres(at)anarazel(dot)de> writes:
> > Perhaps, for v11, we should actually make sure there's no memory context
> > etc set during _PG_init() to catch such problems earlier?
>
> I don't see much of a way to do that in the "typical" case where
> the library load happens as a result of a SQL command. You can't
> just say "oh, we're not in a transaction" and then later "wait,
> yes we are".
Transaction seems hard, but setting CurrentMemoryContext = NULL during
library load seems quite possible. And that'll cause a lot of code that
assumes an in-progress transaction to fail.
> Maybe we should recommend that extension authors test their libraries
> in the preload scenario ...
That probably won't hurt. A quick search in the docs doesn't turn up any
evidence of us having documented that you shouldn't do database access
in _PG_init()...
Greetings,
Andres Freund
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2017-08-08 21:12:14 | Re: your mail |
Previous Message | Tom Lane | 2017-08-08 20:15:15 |