Ed Behn <ed@behn.us> writes:
> I'm using a callback function that is called when a memory context is
> deleted to remove a temporary file. This works fine when the transaction
> ends normally or raises an ERROR. However, when a FATAL event happens, the
> callback is not run. Is this a bug or intended behaviour?
It's intended behavior, and I seriously doubt that it ever worked
differently.
> It seems to me that callbacks should be run in the event of a FATAL event
> in order to clean up any lingering issues.
They'd be far more likely to cause issues than cure them. Or at least
that's the design assumption. If you really need something here, put
it in an on_proc_exit callback not a memory context callback.
regards, tom lane