Details
-
Sub-task
-
Status: Open
-
Major
-
Resolution: Unresolved
-
None
-
None
-
None
-
ghx-label-14
Description
In the first version of the AdmissionControlService, we're sending the entire TQueryExecRequest/TQueryOptions as a sidecar to the admission controller. There are various things contained in the TQueryExecRequest/TQueryOptions that are not actually needed by the admission controller, and sending them increases network load and query running time unnecessarily.
We should evaluate how much of a perf impact there is due to this and how much could actually be removed.
Some small things may be non-trivial to remove and ultimately not worth it, for example the tree of TPlanNodes contains some info needed by the admission controller (eg. memory estimates) and some things that are not (eg. runtime filter descriptors). Making two parallel trees, one with only admission-required data (which would require extensive refactoring in the planner or wasted work in the coordinator copying out the required parts from what the planner returns) may be too complicated/introduce too much other overhead to be worth it.