GraphScope
GraphScope copied to clipboard
fix(interactive): Support Join of Path Expand in Compiler & Runtime
What do these changes do?
This PR mainly supports join of path expand, and the main features implemented on the compiler side include:
- Splitting path_expand and tagging the split left and right paths with different aliases respectively.
- After completing the path join, in order to ensure the consistency of the data model with the original path, an
ARRAY_CONCAToperation is added to connect the left and right paths, and the path afterCONCATis tagged with the original alias. - Add end-to-end tests (gremlin & cypher) for st-path to verify the correctness of the compiler and runtime functionality implementations.
Related issue number
Fixes
这个path join,默认就是两边往中间走的join,也就是假如path是 1->2->3->4->5, 那么现在的实现假定是 1->2->3 Join 5 ->4->3, 但是这里可能会有其他的join的方式,比如 1->2->3 Join 3->4->5, 这些语义应该在concat path的那个算子里有定义才行
建了issue #3765 ,之后会fix这个问题