Vertica::ExecutorPlanContext Class Reference
An ExecutorPlanContext is a PlanContext object whose scope is limited to a single executor node: it and its parameters will never be serialized. In addition to providing information about nodes involved in a query, it indicates how many threads are available and allocated for a load.
Inheritance diagram for Vertica::ExecutorPlanContext:
Collaboration diagram for Vertica::ExecutorPlanContext:
| Public Member Functions | |
|---|---|
| ExecutorPlanContext (ExecutorParamWriter &writer, std::vector clusterNodes, std::vector targetNodes, bool canApportionSource, size_t maxPossibleThreads, ssize_t actualThreads=-1) | |
| bool | canApportionSource () const |
| const std::vector & | getClusterNodes () |
| ssize_t | getLoadConcurrency () const |
| size_t | getMaxAllowedThreads () const |
| virtual ParamReader & | getReader () |
| SourceIterator * | getSources () const |
| const std::vector & | getTargetNodes () const |
| virtual ExecutorParamWriter & | getWriter () override |
| void | setSources (SourceIterator *sources) |
| void | setTargetNodes (const std::vector &nodes) |
Detailed Description
An ExecutorPlanContext is a PlanContext object whose scope is limited to a single executor node: it and its parameters will never be serialized. In addition to providing information about nodes involved in a query, it indicates how many threads are available and allocated for a load.
Member Function Documentation
◆canApportionSource()
bool Vertica::NodeSpecifyingPlanContext::canApportionSource() const
inline inherited return whether the UDL source can be apportioned among multiple nodes or threads
◆getClusterNodes()
const std::vector& Vertica::PlanContext::getClusterNodes()
inline inherited Get a list of all of the nodes in the current cluster, by node name
Referenced by Vertica::NodeSpecifyingPlanContext::setTargetNodes().
◆getReader()
virtual ParamReader& Vertica::PlanContext::getReader()
inlinevirtualinherited
Get a read-only instance of the current context
◆getTargetNodes()
const std::vector& Vertica::NodeSpecifyingPlanContext::getTargetNodes() const
inline inherited Return the set of nodes that this query is currently set to run on
◆getWriter()
virtual ExecutorParamWriter& Vertica::ExecutorPlanContext::getWriter()
inlinevirtual
Get the current context for writing
Reimplemented from Vertica::PlanContext.
◆setTargetNodes()
void Vertica::NodeSpecifyingPlanContext::setTargetNodes(const std::vector & nodes)
inline inherited Change the set of nodes that the query is intended to run on. Throws UnknownNodeException if any of the specified node names is not actually the name of any node in the cluster.