Change definition of path equality#192
Merged
Merged
Conversation
The direction in which a relationship is traversed is not significant for a path. The mention of this in the CIP was caused by a misunderstanding.
thobe
reviewed
Feb 28, 2017
| """ | ||
| Then the result should be: | ||
| | p1 = p2 | | ||
| | true | |
|
I think there are more scenarios that should be considered, for completeness: Where the result could be either: or: (without order) and With the same possible results as above. |
This file contains hidden or 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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Undirected matching on self-relationships (aka loops) is tricky. #162 makes an effort to try and make explicit the intended semantics. This leaves paths in an ill-defined state, however. Consider the graph with one node and one relationship (to itself), and the following query:
#162 states that only one row is to be returned (there's only one combination of node-rel-node available in the data graph). However, if paths are supposed to capture the direction in which they traverse relationships, then which path should be returned by this query: the one that traverses the relationship outgoing, or the one that does it incoming? It seems ill-defined.
In no other circumstance other than a self-relationship will the traversed direction matter.
Same idea as in #160