Vertica::NodeSpecifyingPlanContext Class Reference
Interface that allows storage of query-plan state, when different parts of query planning take place on different computers.
Inheritance diagram for Vertica::NodeSpecifyingPlanContext:
Collaboration diagram for Vertica::NodeSpecifyingPlanContext:
| Public Member Functions | |
|---|---|
| NodeSpecifyingPlanContext (ParamWriter &writer, std::vector clusterNodes, bool canApportion) | |
| NodeSpecifyingPlanContext (ParamWriter &writer, std::vector clusterNodes, std::vector targetNodes, bool canApportion) | |
| bool | canApportionSource () const |
| const std::vector & | getClusterNodes () |
| virtual ParamReader & | getReader () |
| const std::vector & | getTargetNodes () const |
| virtual ParamWriter & | getWriter () |
| void | setTargetNodes (const std::vector &nodes) |
Detailed Description
Interface that allows storage of query-plan state, when different parts of query planning take place on different computers.
For example, if some work is done on the query initiator node and some is done on each node executing the query.
In addition to the functionality provided by PlanContext, NodeSpecifyingPlanContext allows you to specify which nodes the query should run on. This is used for UDLs.
Member Function Documentation
bool Vertica::NodeSpecifyingPlanContext::canApportionSource() const
inline return whether the UDL source can be apportioned among multiple nodes or threads
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 setTargetNodes().
virtual ParamReader& Vertica::PlanContext::getReader()
inlinevirtualinherited
Get a read-only instance of the current context
const std::vector& Vertica::NodeSpecifyingPlanContext::getTargetNodes() const
inline Return the set of nodes that this query is currently set to run on
virtual ParamWriter& Vertica::PlanContext::getWriter()
inlinevirtualinherited
Get the current context for writing
Reimplemented in Vertica::ExecutorPlanContext.
Referenced by Vertica::ExecutorPlanContext::getWriter().
void Vertica::NodeSpecifyingPlanContext::setTargetNodes(const std::vector & nodes)
inline 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.