Register llvm_shutdown using on_proc_exit, not before_shmem_exit.
authorRobert Haas <rhaas@postgresql.org>
Thu, 6 Aug 2020 18:13:03 +0000 (14:13 -0400)
committerRobert Haas <rhaas@postgresql.org>
Thu, 6 Aug 2020 18:13:03 +0000 (14:13 -0400)
This seems more correct, because other before_shmem_exit calls may
expect the infrastructure that is needed to run queries and access the
database to be working, and also because this cleanup has nothing to
do with shared memory.

There are no known user-visible consequences to this, though, apart
from what was previous fixed by commit
303640199d0436c5e7acdf50b837a027b5726594 and back-patched as commit
bcbc27251d35336a6442761f59638138a772b839 and commit
f7013683d9bb663a6a917421b1374306a32f165b, so for now, no back-patch.

Bharath Rupireddy

Discussion: http://postgr.es/m/CALj2ACWk7j4F2v2fxxYfrroOF=AdFNPr1WsV+AGtHAFQOqm_pw@mail.gmail.com

src/backend/jit/llvm/llvmjit.c

index af8b34aaaf3c7684ad13208976b0565d8eb47a15..43bed78a529952ba7a5ce35eda5d0db1a239caeb 100644 (file)
@@ -683,7 +683,7 @@ llvm_session_initialize(void)
    }
 #endif
 
-   before_shmem_exit(llvm_shutdown, 0);
+   on_proc_exit(llvm_shutdown, 0);
 
    llvm_session_initialized = true;