Improve variable-length match plan with Loop planNode (#743)
* loop body draft * fix match base cases and passThrough scheduler * clean up * refactor Union executor to support merge two versions of the same input * modify union node * use an extra Union node to append result of the first step * add UnionAllVersionVarExecutor * add UnionAllVersionVarExecutor into variable-length match plan * remove redundant code * fix UTs * address comments
Showing
- src/context/ExecutionContext.h 1 addition, 1 deletionsrc/context/ExecutionContext.h
- src/context/Iterator.h 17 additions, 1 deletionsrc/context/Iterator.h
- src/executor/CMakeLists.txt 1 addition, 0 deletionssrc/executor/CMakeLists.txt
- src/executor/Executor.cpp 4 additions, 0 deletionssrc/executor/Executor.cpp
- src/executor/query/UnionAllVersionVarExecutor.cpp 48 additions, 0 deletionssrc/executor/query/UnionAllVersionVarExecutor.cpp
- src/executor/query/UnionAllVersionVarExecutor.h 26 additions, 0 deletionssrc/executor/query/UnionAllVersionVarExecutor.h
- src/planner/PlanNode.cpp 2 additions, 0 deletionssrc/planner/PlanNode.cpp
- src/planner/PlanNode.h 1 addition, 0 deletionssrc/planner/PlanNode.h
- src/planner/Query.h 14 additions, 0 deletionssrc/planner/Query.h
- src/planner/SequentialPlanner.cpp 1 addition, 0 deletionssrc/planner/SequentialPlanner.cpp
- src/planner/match/Expand.cpp 66 additions, 41 deletionssrc/planner/match/Expand.cpp
- src/planner/match/Expand.h 4 additions, 5 deletionssrc/planner/match/Expand.h
- src/planner/match/MatchSolver.cpp 1 addition, 1 deletionsrc/planner/match/MatchSolver.cpp
- src/scheduler/Scheduler.cpp 5 additions, 4 deletionssrc/scheduler/Scheduler.cpp
- src/scheduler/Scheduler.h 1 addition, 1 deletionsrc/scheduler/Scheduler.h
- src/validator/test/MatchValidatorTest.cpp 0 additions, 11 deletionssrc/validator/test/MatchValidatorTest.cpp
- src/validator/test/QueryValidatorTest.cpp 28 additions, 45 deletionssrc/validator/test/QueryValidatorTest.cpp
- tests/tck/features/match/Base.feature 1 addition, 1 deletiontests/tck/features/match/Base.feature
Please register or sign in to comment