diff --git a/src/cypher/execution_plan/ops/op_expand_all.h b/src/cypher/execution_plan/ops/op_expand_all.h index 9d13011e0a..f99a18ae98 100644 --- a/src/cypher/execution_plan/ops/op_expand_all.h +++ b/src/cypher/execution_plan/ops/op_expand_all.h @@ -52,7 +52,7 @@ class ExpandAll : public OpBase { bool _CheckToSkipEdge(RTContext *ctx) const { return eit_->IsValid() && - (pattern_graph_->VisitedEdges().Contains(*eit_) || _CheckToSkipEdgeFilter(ctx) || + (_CheckToSkipEdgeFilter(ctx) || (expand_into_ && eit_->GetNbr(expand_direction_) != neighbor_->PullVid())); } diff --git a/test/test_query.cpp b/test/test_query.cpp index 498682b6fd..d831ec2ece 100644 --- a/test/test_query.cpp +++ b/test/test_query.cpp @@ -167,11 +167,15 @@ class TestQuery : public TuGraphTest { parser::LcypherParser parser(&tokens); parser.addErrorListener(&parser::CypherErrorListener::INSTANCE); parser::CypherBaseVisitor visitor(ctx_.get(), parser.oC_Cypher()); + UT_LOG() << "-----CLAUSE TO STRING-----"; + for (const auto &sql_query : visitor.GetQuery()) { + UT_LOG() << sql_query.ToString(); + } cypher::ExecutionPlan execution_plan; execution_plan.Build(visitor.GetQuery(), visitor.CommandType(), ctx_.get()); execution_plan.Validate(ctx_.get()); - execution_plan.DumpGraph(); - execution_plan.DumpPlan(0, false); + UT_LOG() << execution_plan.DumpGraph(); + UT_LOG() << execution_plan.DumpPlan(0, false); execution_plan.Execute(ctx_.get()); result = ctx_->result_->Dump(false); UT_LOG() << "-----result-----";