Skip to content

Commit

Permalink
Merge branch 'master' into ci-improvements
Browse files Browse the repository at this point in the history
  • Loading branch information
yixinglu authored Nov 22, 2021
2 parents 6f46a2c + c50145d commit cb5f8e5
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 14 deletions.
18 changes: 10 additions & 8 deletions src/graph/planner/match/MatchClausePlanner.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -45,14 +45,12 @@ static Expression* genVertexFilter(const NodeInfo& node) { return node.filter; }

static Expression* genEdgeFilter(const EdgeInfo& edge) { return edge.filter; }

static std::unique_ptr<std::vector<VertexProp>> genVertexProps(const NodeInfo& node,
QueryContext* qctx,
GraphSpaceID spaceId) {
static StatusOr<std::unique_ptr<std::vector<VertexProp>>> genVertexProps(const NodeInfo& node,
QueryContext* qctx,
GraphSpaceID spaceId) {
// TODO
UNUSED(node);
UNUSED(qctx);
UNUSED(spaceId);
return std::make_unique<std::vector<VertexProp>>();
return SchemaUtil::getAllVertexProp(qctx, spaceId, true);
}

static std::unique_ptr<std::vector<storage::cpp2::EdgeProp>> genEdgeProps(const EdgeInfo& edge,
Expand Down Expand Up @@ -239,7 +237,9 @@ Status MatchClausePlanner::leftExpandFromNode(const std::vector<NodeInfo>& nodeI
auto& edge = edgeInfos[i - 1];
auto traverse = Traverse::make(qctx, subplan.root, spaceId);
traverse->setSrc(nextTraverseStart);
traverse->setVertexProps(genVertexProps(node, qctx, spaceId));
auto vertexProps = genVertexProps(node, qctx, spaceId);
NG_RETURN_IF_ERROR(vertexProps);
traverse->setVertexProps(std::move(vertexProps).value());
traverse->setEdgeProps(genEdgeProps(edge, reversely, qctx, spaceId));
traverse->setVertexFilter(genVertexFilter(node));
traverse->setEdgeFilter(genEdgeFilter(edge));
Expand Down Expand Up @@ -283,7 +283,9 @@ Status MatchClausePlanner::rightExpandFromNode(const std::vector<NodeInfo>& node
auto& edge = edgeInfos[i];
auto traverse = Traverse::make(qctx, subplan.root, spaceId);
traverse->setSrc(nextTraverseStart);
traverse->setVertexProps(genVertexProps(node, qctx, spaceId));
auto vertexProps = genVertexProps(node, qctx, spaceId);
NG_RETURN_IF_ERROR(vertexProps);
traverse->setVertexProps(std::move(vertexProps).value());
traverse->setEdgeProps(genEdgeProps(edge, reversely, qctx, spaceId));
traverse->setVertexFilter(genVertexFilter(node));
traverse->setEdgeFilter(genEdgeFilter(edge));
Expand Down
9 changes: 3 additions & 6 deletions src/graph/validator/MatchValidator.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -551,12 +551,9 @@ StatusOr<Expression *> MatchValidator::makeNodeSubFilter(const MapExpression *ma
auto *pool = qctx_->objPool();
// Node has tag without property
if (!label.empty() && map == nullptr) {
auto *left = ConstantExpression::make(pool, label);

auto *args = ArgumentList::make(pool);
args->addArgument(VertexExpression::make(pool));
auto *right = FunctionCallExpression::make(pool, "tags", args);
Expression *root = RelationalExpression::makeIn(pool, left, right);
// label._tag IS NOT EMPTY
auto *tagExpr = TagPropertyExpression::make(pool, label, kTag);
auto *root = UnaryExpression::makeIsNotEmpty(pool, tagExpr);

return root;
}
Expand Down

0 comments on commit cb5f8e5

Please sign in to comment.