On 2015-07-07 09:42:54 -0700, Gurjeet Singh wrote:
> On a side note, I see that the pg_create_*_replication_slot() functions do
> not behave transactionally; that is, rolling back a transaction does not
> undo the slot creation.
It can't, because otherwise you couldn't run them on a standby.
> Should we prevent these, and corresponding drop functions, from being
> called inside an explicit transaction? PreventTransactionChain() is
> geared towards serving just the utility commands. Do we protect
> against calling such functions in a transaction block, or from user
> functions? How?
We discussed that when slots where introduced. There seems little
benefit in doing so, and it'll make some legitimate use cases harder.