Class QueryPlanDagChecker

class QueryPlanDagChecker : public RelRexDagVisitor

Public Functions

QueryPlanDagChecker()
void check(const RelAlgNode *rel_alg_node)
void detectNonSupportedNode(const std::string &node_tag)
void reset()
bool getCheckResult() const
const std::string &getNonSupportedNodeTag() const

Public Static Functions

static std::unordered_set<std::string> getNonSupportedFunctionsList()
std::pair<bool, std::string> hasNonSupportedNodeInDag(const RelAlgNode *rel_alg_node)

Private Functions

void visit(const RelLogicalValues *rel_alg_node)
void visit(const RelModify *rel_alg_node)
void visit(const RelProject *rel_alg_node)
void visit(const RelScan *rel_alg_node)
void visit(const RelCompound *rel_alg_node)
void visit(const RelLogicalUnion *rel_alg_node)
void visit(const RexFunctionOperator *rex_node)
void visit(const RexOperator *rex_node)

Private Members

bool detect_non_supported_node_
std::string non_supported_node_tag_
const std::unordered_set<std::string> non_supported_functions_