Обсуждение: pgsql: Fix leak of LLVM "fatal-on-oom" section counter.

Поиск
Список
Период
Сортировка

pgsql: Fix leak of LLVM "fatal-on-oom" section counter.

От
Heikki Linnakangas
Дата:
Fix leak of LLVM "fatal-on-oom" section counter.

llvm_release_context() called llvm_enter_fatal_on_oom(), but was missing
the corresponding llvm_leave_fatal_on_oom() call. As a result, if JIT was
used at all, we were almost always in the "fatal-on-oom" state.

It only makes a difference if you use an extension written in C++, and
run out of memory in a C++ 'new' call. In that case, you would get a
PostgreSQL FATAL error, instead of the default behavior of throwing a
C++ exception.

Back-patch to all supported versions.

Reviewed-by: Daniel Gustafsson
Discussion: https://www.postgresql.org/message-id/54b78cca-bc84-dad8-4a7e-5b56f764fab5@iki.fi

Branch
------
REL_11_STABLE

Details
-------
https://git.postgresql.org/pg/commitdiff/2316ff1ae5a8064c2604247bfc4695d53b3e4158

Modified Files
--------------
src/backend/jit/llvm/llvmjit.c | 2 ++
1 file changed, 2 insertions(+)