citus/src/include
Onur Tirtir 73411915a4
Avoid re-assigning the global pid for client backends and bg workers when the application_name changes (#7791)
DESCRIPTION: Fixes a crash that happens because of unsafe catalog access
when re-assigning the global pid after application_name changes.

When application_name changes, we don't actually need to
try re-assigning the global pid for external client backends because
application_name doesn't affect the global pid for such backends. Plus,
trying to re-assign the global pid for external client backends would
unnecessarily cause performing a catalog access when the cached local
node id is invalidated. However, accessing to the catalog tables is
dangerous in certain situations like when we're not in a transaction
block. And for the other types of backends, i.e., the Citus internal
backends, we need to re-assign the global pid when the application_name
changes because for such backends we simply extract the global pid
inherited from the originating backend from the application_name -that's
specified by originating backend when openning that connection- and this
doesn't require catalog access.
2024-12-23 14:01:53 +00:00
..
columnar Sort includes (#7326) 2023-11-23 18:19:54 +01:00
distributed Avoid re-assigning the global pid for client backends and bg workers when the application_name changes (#7791) 2024-12-23 14:01:53 +00:00
.gitignore Self-implemented review feedback 2017-04-03 22:55:12 -06:00
citus_config.h.in Renames configure.in to fix warnings (#6034) 2022-07-19 18:24:15 +02:00
citus_version.h.in HAVE_LZ4 -> HAVE_CITUS_LZ4 (#5541) 2021-12-16 16:21:52 +03:00
pg_version_compat.h Support CREATE / DROP database commands from any node (#7359) 2024-01-08 16:47:49 +00:00
pg_version_constants.h move pg_version_constants.h to toplevel include (#7335) 2023-11-09 15:09:39 +00:00