citusdata / citusdata/citus

Consider removing `localExecutionSupported` param from executor functions

Open
#5,637 0 comments 0 reactions 0 assignees View on GitHub
executor
Dominant language
C
Stars
12.8k
Forks
794
Avg merge
2d 14h
Merged PRs (30d)
31

Description

Currently, we have three variables to take into account to decide whether local execution is supported or not when executing a DDL command.
- Global local execution state (CurrentLocalExecutionStatus)
- DistributedExecution->localExecutionSupported
- Task->cannotBeExecutedLocally

Looking into the code, the last two seem to have the same meaning in most contexts. So we might want to throw away `localExecutionIsSupported` totally.

Even more, we can get rid of `Task->cannotBeExecutedLocally` too and introduce one more enum value into `LocalExecutionStatus` such as `LOCAL_EXECUTION_NOT_SUPPORTED` to simplify things even more.

That way, we will only need to consider (or specify) `CurrentLocalExecutionStatus` before / during the execution.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.