28590aea53
Summary: This diff fixes the variable expand operator to work correctly then the start and destination nodes use the same symbol or when the destination symbol is an existing symbol. Previously, the variable expand operator produced paths that were both completely wrong (they shouldn't have been produced) and nonexistent (they didn't even exist in the storage). Invalid data was produced because of a wrong equality check that was introduced in D1703. This issue was reported externally and the supplied test case was: ``` CREATE (p1:Person {id: 1})-[:KNOWS]->(:Person {id: 2})-[:KNOWS]->(:Person {id: 3})-[:KNOWS]->(:Person {id: 4})-[:KNOWS]->(p1); MATCH path = (pers:Person {id: 3})-[:KNOWS*2]->(pers) RETURN path; ``` Also, tests have been added so the behavior remains correct. Reviewers: buda Reviewed By: buda Subscribers: pullbot Differential Revision: https://phabricator.memgraph.io/D2793 |
||
---|---|---|
.. | ||
benchmark | ||
concurrent | ||
drivers | ||
feature_benchmark | ||
integration | ||
macro_benchmark | ||
manual | ||
property_based | ||
public_benchmark | ||
qa | ||
stress | ||
unit | ||
.clang-tidy | ||
apollo_runs.py | ||
apollo_runs.yaml | ||
client-stress.sh | ||
CMakeLists.txt |