Skip to content

Conversation

@jeffreylovitz
Copy link
Contributor

Introduces support for multiple labels on nodes in querying and data persistence.

One element that is absent from this PR is a heuristic for determining which label operand is the best candidate for being used as the LabelScan entry-point. The sensible rule for this would be to defer to usable indexes, and that failing choose the label with the fewest associated nodes, but we don't currently have access to label matrices when these choices are being made.

Copy link
Contributor

@swilly22 swilly22 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

reviewed 50/64 files

Copy link
Contributor

@swilly22 swilly22 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Make sure we test QGNode such that it is impossible to create a QGNode with a duplicated label
e.g. MATCH (a:A:B:A) should create a QueryGraphNode with just A and B labels

AlgebraicExpression *ae_src = AlgebraicExpression_RemoveSource(&exps[0]);
ASSERT(AlgebraicExpression_DiagonalOperand(ae_src, 0));

const char *label = AlgebraicExpression_Label(ae_src);
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍 This is a much nicer solution, good idea!

Copy link
Contributor

@swilly22 swilly22 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

great addition

* This file is available under the Redis Labs Source Available License Agreement
*/

#include "bulk_insert.h"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please add tests for bulk loading multi-label nodes

swilly22
swilly22 previously approved these changes Oct 12, 2021
@AviAvni
Copy link
Contributor

AviAvni commented Oct 13, 2021

Closed for #1988

@AviAvni AviAvni closed this Oct 13, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants