Thread: pgsql: LLVMJIT: Release JIT context after running ExprContextshutdown

pgsql: LLVMJIT: Release JIT context after running ExprContextshutdown

From
Andres Freund
Date:
LLVMJIT: Release JIT context after running ExprContext shutdown callbacks.

Due to inlining it previously was possible that an ExprContext's
shutdown callback pointed to a JITed function. As the JIT context
previously was shut down before the shutdown callbacks were called,
that could lead to segfaults.  Fix the ordering.

Reported-By: Dmitry Dolgov
Author: Andres Freund
Discussion: https://postgr.es/m/CA+q6zcWO7CeAJtHBxgcHn_hj+PenM=tvG0RJ93X1uEJ86+76Ug@mail.gmail.com
Backpatch: 11-, where JIT compilation was added

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/3acc4acd9bcbefbfaf789762950726c6208daf1b

Modified Files
--------------
src/backend/executor/execMain.c  |  5 -----
src/backend/executor/execUtils.c | 18 +++++++++++++-----
2 files changed, 13 insertions(+), 10 deletions(-)