mirror of https://github.com/citusdata/citus.git
This fixes #7230. First of all, using HeapTupleHeaderGetDatumLength(heapTuple) is definetly wrong, it gives a number that's 4 times less than the correct tuple size (heapTuple.t_len). See https://github.com/postgres/postgres/blob/REL_16_0/src/include/access/htup_details.h#L455-L456 https://github.com/postgres/postgres/blob/REL_16_0/src/include/varatt.h#L279 https://github.com/postgres/postgres/blob/REL_16_0/src/include/varatt.h#L225-L226 When I fixed it, the limit_intermediate_size test failed, so I tried to understand what's going on there. In original commit |
||
---|---|---|
.. | ||
adaptive_executor.c | ||
citus_custom_scan.c | ||
directed_acyclic_graph_execution.c | ||
distributed_execution_locks.c | ||
distributed_intermediate_results.c | ||
executor_util_params.c | ||
executor_util_tasks.c | ||
executor_util_tuples.c | ||
insert_select_executor.c | ||
intermediate_results.c | ||
local_executor.c | ||
merge_executor.c | ||
multi_executor.c | ||
multi_server_executor.c | ||
partitioned_intermediate_results.c | ||
placement_access.c | ||
query_stats.c | ||
repartition_executor.c | ||
repartition_join_execution.c | ||
subplan_execution.c | ||
transmit.c | ||
tuple_destination.c |