TransportBroadcastByNodeAction does O(#shards) work on transport worker thread #97914
Labels
>bug
:Distributed/Distributed
A catch all label for anything in the Distributed Area. If you aren't sure, use this one.
Team:Distributed
Meta label for distributed team
Three interrelated issues here:
TransportBroadcastByNodeAction
derivatives are typically executed viaNodeClient
which bypasses theTransportService
and therefore does not respect (or even know about) theexecutor
parameter which would fork. This means that the coordination work, including grouping all the shards by node, happens on the calling thread. When executed from the REST layer, that's a transport worker. This isNodeClient
executes transport actions without forking #97916, but until that's fixed we need a workaround.The node-level responses are deserialised and processed on the receiving transport worker too.
Several of these actions use
SAME
for their executor, bypassing the forking that does exist today.Relates #77466
The text was updated successfully, but these errors were encountered: