On Fri, Jul 24, 2020 at 7:10 AM Bharath Rupireddy
<bharath.rupireddyforpostgres@gmail.com> wrote:
> I looked at what actually llvm_shutdown() does? It frees up JIT stacks, also if exists perf related resource, using
LLVMOrcDisposeInstance()and LLVMOrcUnregisterPerf(), that were dynamically allocated in llvm_session_initialize through
aJIT library function LLVMOrcCreateInstance() [1].
>
> It looks like there is no problem in moving llvm_shutdown to either on_shmem_exit() or on_proc_exit().
If it doesn't involve shared memory, I guess it can be on_proc_exit()
rather than on_shmem_exit().
I guess the other question is why we're doing it at all. What
resources are being allocated that wouldn't be freed up by process
exit anyway?
--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company