-
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Revamp JanusGraphMultiQueryStrategy for better parent step usage
This commit improves JanusGraphMultiQueryStrategy to better support multi-query compatible parent steps. 1. This commit brings better support for `repeat` step by introducing next itaration registration process. Previously `repeat` children steps was getting traversers registered from the beginning of all outer repeat steps which could result in duplicate or unnecesary retrievals for the first batch. Moreover, next iterations were not considered. This commit changes the approach to register only with the beginning and end of the first reaching `repeat` step. 2. Instead of using JanusGraphMultiQueryStep in the local traversal, this commit changes the approach to use the most outer eligible parent's JanusGraphMultiQueryStep. This improves usage of the existing parent steps by properly registering batches instead of registering batches considering local elements only. 3. This commit adds support to almost all known TinkerPop Parent steps. The exception is `match` step. We didn't have proper outter start registration for `match` step previously and now as well. Fixes #3733 Fixes #3735 Fixes #2996 Signed-off-by: Oleksandr Porunov <alexandr.porunov@gmail.com>
- Loading branch information
Showing
20 changed files
with
953 additions
and
163 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.