citus/src/backend/distributed/utils
Cédric Villemain 759b49f69d
fix issue #7676: wrong handler around MULTIEXPR (#7914)
DESCRIPTION: Fixes a bug with `UPDATE SET (...) = (SELECT
some_func(),... )` (#7676)

Citus was checking for presence of sublink, but forgot to manage
multiexpr while evaluating clauses during planning. At this stage (citus
planner), it's not always possible to call PostgreSQL code because the
tree is not yet ready for PostgreSQL pure executor.

Fixes https://github.com/citusdata/citus/issues/7676.

Fixed by adding a new function to check sublink or multiexpr in the
tree.

---------

Co-authored-by: Colm <colmmchugh@microsoft.com>
2025-03-12 11:01:33 +00:00
..
acquire_lock.c Actually sort includes after cherry-pick 2024-04-17 10:26:50 +02:00
aggregate_utils.c Actually sort includes after cherry-pick 2024-04-17 10:26:50 +02:00
array_type.c Actually sort includes after cherry-pick 2024-04-17 10:26:50 +02:00
background_jobs.c Drops PG14 support (#7753) 2025-02-03 17:13:40 +03:00
cancel_utils.c Actually sort includes after cherry-pick 2024-04-17 10:26:50 +02:00
citus_clauses.c fix issue #7676: wrong handler around MULTIEXPR (#7914) 2025-03-12 11:01:33 +00:00
citus_copyfuncs.c Rename foreach_ macros to foreach_declared_ macros (#7700) 2024-10-16 17:01:39 +03:00
citus_depended_object.c PG17 Compatibility - Fix HideCitusDependentObjects function (#7796) 2024-12-20 17:59:09 +03:00
citus_nodefuncs.c PG17 compatibility: Resolve compilation issues (#7699) 2024-10-17 15:37:13 +03:00
citus_outfuncs.c move pg_version_constants.h to toplevel include (#7335) 2024-04-17 10:26:50 +02:00
citus_readfuncs.c Remove READFUNCs (#3536) 2020-02-24 12:43:28 +01:00
citus_safe_lib.c Actually sort includes after cherry-pick 2024-04-17 10:26:50 +02:00
citus_stat_tenants.c Drops PG14 support (#7753) 2025-02-03 17:13:40 +03:00
citus_version.c Actually sort includes after cherry-pick 2024-04-17 10:26:50 +02:00
colocation_utils.c [performance improvement] remove duplicate LoadShardList call (#7380) 2025-01-12 22:08:03 +03:00
directory.c Actually sort includes after cherry-pick 2024-04-17 10:26:50 +02:00
distribution_column.c Actually sort includes after cherry-pick 2024-04-17 10:26:50 +02:00
distribution_column_map.c Rename foreach_ macros to foreach_declared_ macros (#7700) 2024-10-16 17:01:39 +03:00
enable_ssl.c Actually sort includes after cherry-pick 2024-04-17 10:26:50 +02:00
errormessage.c Actually sort includes after cherry-pick 2024-04-17 10:26:50 +02:00
foreign_key_relationship.c Rename foreach_ macros to foreach_declared_ macros (#7700) 2024-10-16 17:01:39 +03:00
function.c Actually sort includes after cherry-pick 2024-04-17 10:26:50 +02:00
function_utils.c Actually sort includes after cherry-pick 2024-04-17 10:26:50 +02:00
hash_helpers.c Actually sort includes after cherry-pick 2024-04-17 10:26:50 +02:00
jsonbutils.c Actually sort includes after cherry-pick 2024-04-17 10:26:50 +02:00
listutils.c Rename foreach_ macros to foreach_declared_ macros (#7700) 2024-10-16 17:01:39 +03:00
log_utils.c Actually sort includes after cherry-pick 2024-04-17 10:26:50 +02:00
maintenanced.c Actually sort includes after cherry-pick 2024-04-17 10:26:50 +02:00
multi_partitioning_utils.c Rename foreach_ macros to foreach_declared_ macros (#7700) 2024-10-16 17:01:39 +03:00
namespace_utils.c Actually sort includes after cherry-pick 2024-04-17 10:26:50 +02:00
param_utils.c Actually sort includes after cherry-pick 2024-04-17 10:26:50 +02:00
priority.c Actually sort includes after cherry-pick 2024-04-17 10:26:50 +02:00
query_utils.c Actually sort includes after cherry-pick 2024-04-17 10:26:50 +02:00
reference_table_utils.c Rename foreach_ macros to foreach_declared_ macros (#7700) 2024-10-16 17:01:39 +03:00
relation_utils.c PG16 compatibility - Rework PlannedStmt and Query's Permission Info (#7098) 2023-08-09 15:23:00 +03:00
replication_origin_session_utils.c Add missing postgres.h includes 2024-04-17 10:26:50 +02:00
resource_lock.c Rename foreach_ macros to foreach_declared_ macros (#7700) 2024-10-16 17:01:39 +03:00
role.c Actually sort includes after cherry-pick 2024-04-17 10:26:50 +02:00
shard_utils.c Actually sort includes after cherry-pick 2024-04-17 10:26:50 +02:00
shardinterval_utils.c [performance improvement] remove duplicate LoadShardList call (#7380) 2025-01-12 22:08:03 +03:00
statistics_collection.c Rename foreach_ macros to foreach_declared_ macros (#7700) 2024-10-16 17:01:39 +03:00
string_utils.c Degrade gracefully when no background workers available 2020-10-05 16:55:00 +03:00
task_execution_utils.c Actually sort includes after cherry-pick 2024-04-17 10:26:50 +02:00
tenant_schema_metadata.c Actually sort includes after cherry-pick 2024-04-17 10:26:50 +02:00
tuplestore.c Actually sort includes after cherry-pick 2024-04-17 10:26:50 +02:00
type_utils.c Actually sort includes after cherry-pick 2024-04-17 10:26:50 +02:00