diff --git a/src/storage/query/GetNeighborsProcessor.cpp b/src/storage/query/GetNeighborsProcessor.cpp index ae52e10e89c..b6f5f0b3f68 100644 --- a/src/storage/query/GetNeighborsProcessor.cpp +++ b/src/storage/query/GetNeighborsProcessor.cpp @@ -436,7 +436,7 @@ nebula::cpp2::ErrorCode GetNeighborsProcessor::handleEdgeStatProps( } void GetNeighborsProcessor::onProcessFinished() { - resp_.set_vertices(std::move(resultDataSet_)); + resp_.vertices_ref() = std::move(resultDataSet_); } void GetNeighborsProcessor::profilePlan(StoragePlan& plan) { diff --git a/src/storage/test/LookupIndexTest.cpp b/src/storage/test/LookupIndexTest.cpp index 227c3f08bdf..bf9d5b341a9 100644 --- a/src/storage/test/LookupIndexTest.cpp +++ b/src/storage/test/LookupIndexTest.cpp @@ -2942,62 +2942,62 @@ TEST_P(LookupIndexTest, AggregateTagIndexTest) { cpp2::LookupIndexRequest req; nebula::storage::cpp2::IndexSpec indices; - req.set_space_id(spaceId); + req.space_id_ref() = spaceId; nebula::cpp2::SchemaID schemaId; - schemaId.set_tag_id(1); - indices.set_schema_id(schemaId); + schemaId.tag_id_ref() = 1; + indices.schema_id_ref() = schemaId; std::vector parts; for (int32_t p = 1; p <= totalParts; p++) { parts.emplace_back(p); } - req.set_parts(std::move(parts)); + req.parts_ref() = std::move(parts); std::vector returnCols; returnCols.emplace_back(kVid); returnCols.emplace_back(kTag); returnCols.emplace_back("age"); - req.set_return_columns(std::move(returnCols)); + req.return_columns_ref() = std::move(returnCols); // player.name_ == "Rudy Gay" cpp2::IndexColumnHint columnHint1; std::string name1 = "Rudy Gay"; - columnHint1.set_begin_value(Value(name1)); - columnHint1.set_column_name("name"); - columnHint1.set_scan_type(cpp2::ScanType::PREFIX); + columnHint1.begin_value_ref() = Value(name1); + columnHint1.column_name_ref() = "name"; + columnHint1.scan_type_ref() = cpp2::ScanType::PREFIX; // player.name_ == "Kobe Bryant" cpp2::IndexColumnHint columnHint2; std::string name2 = "Kobe Bryant"; - columnHint2.set_begin_value(Value(name2)); - columnHint2.set_column_name("name"); - columnHint2.set_scan_type(cpp2::ScanType::PREFIX); + columnHint2.begin_value_ref() = Value(name2); + columnHint2.column_name_ref() = "name"; + columnHint2.scan_type_ref() = cpp2::ScanType::PREFIX; std::vector columnHints1; columnHints1.emplace_back(std::move(columnHint1)); std::vector columnHints2; columnHints2.emplace_back(std::move(columnHint2)); cpp2::IndexQueryContext context1; - context1.set_column_hints(std::move(columnHints1)); - context1.set_filter(""); - context1.set_index_id(1); + context1.column_hints_ref() = std::move(columnHints1); + context1.filter_ref() = ""; + context1.index_id_ref() = 1; std::vector statProps; cpp2::IndexQueryContext context2; - context2.set_column_hints(std::move(columnHints2)); - context2.set_filter(""); - context2.set_index_id(1); + context2.column_hints_ref() = std::move(columnHints2); + context2.filter_ref() = ""; + context2.index_id_ref() = 1; decltype(indices.contexts) contexts; contexts.emplace_back(std::move(context1)); contexts.emplace_back(std::move(context2)); - indices.set_contexts(std::move(contexts)); - req.set_indices(std::move(indices)); + indices.contexts_ref() = std::move(contexts); + req.indices_ref() = std::move(indices); cpp2::StatProp statProp; - statProp.set_alias("total age"); + statProp.alias_ref() = "total age"; const auto& exp = *TagPropertyExpression::make(pool, folly::to(1), "age"); - statProp.set_prop(Expression::encode(exp)); - statProp.set_stat(cpp2::StatType::SUM); + statProp.prop_ref() = Expression::encode(exp); + statProp.stat_ref() = cpp2::StatType::SUM; statProps.emplace_back(std::move(statProp)); - req.set_stat_columns(std::move(statProps)); + req.stat_columns_ref() = std::move(statProps); auto fut = processor->getFuture(); processor->process(req); @@ -3047,61 +3047,61 @@ TEST_P(LookupIndexTest, AggregateTagPropNotInReturnColumnsTest) { cpp2::LookupIndexRequest req; nebula::storage::cpp2::IndexSpec indices; - req.set_space_id(spaceId); + req.space_id_ref() = spaceId; nebula::cpp2::SchemaID schemaId; - schemaId.set_tag_id(1); - indices.set_schema_id(schemaId); + schemaId.tag_id_ref() = 1; + indices.schema_id_ref() = schemaId; std::vector parts; for (int32_t p = 1; p <= totalParts; p++) { parts.emplace_back(p); } - req.set_parts(std::move(parts)); + req.parts_ref() = std::move(parts); std::vector returnCols; returnCols.emplace_back(kVid); returnCols.emplace_back(kTag); - req.set_return_columns(std::move(returnCols)); + req.return_columns_ref() = std::move(returnCols); // player.name_ == "Rudy Gay" cpp2::IndexColumnHint columnHint1; std::string name1 = "Rudy Gay"; - columnHint1.set_begin_value(Value(name1)); - columnHint1.set_column_name("name"); - columnHint1.set_scan_type(cpp2::ScanType::PREFIX); + columnHint1.begin_value_ref() = Value(name1); + columnHint1.column_name_ref() = "name"; + columnHint1.scan_type_ref() = cpp2::ScanType::PREFIX; // player.name_ == "Kobe Bryant" cpp2::IndexColumnHint columnHint2; std::string name2 = "Kobe Bryant"; - columnHint2.set_begin_value(Value(name2)); - columnHint2.set_column_name("name"); - columnHint2.set_scan_type(cpp2::ScanType::PREFIX); + columnHint2.begin_value_ref() = Value(name2); + columnHint2.column_name_ref() = "name"; + columnHint2.scan_type_ref() = cpp2::ScanType::PREFIX; std::vector columnHints1; columnHints1.emplace_back(std::move(columnHint1)); std::vector columnHints2; columnHints2.emplace_back(std::move(columnHint2)); cpp2::IndexQueryContext context1; - context1.set_column_hints(std::move(columnHints1)); - context1.set_filter(""); - context1.set_index_id(1); + context1.column_hints_ref() = std::move(columnHints1); + context1.filter_ref() = ""; + context1.index_id_ref() = 1; std::vector statProps; cpp2::IndexQueryContext context2; - context2.set_column_hints(std::move(columnHints2)); - context2.set_filter(""); - context2.set_index_id(1); + context2.column_hints_ref() = std::move(columnHints2); + context2.filter_ref() = ""; + context2.index_id_ref() = 1; decltype(indices.contexts) contexts; contexts.emplace_back(std::move(context1)); contexts.emplace_back(std::move(context2)); - indices.set_contexts(std::move(contexts)); - req.set_indices(std::move(indices)); + indices.contexts_ref() = std::move(contexts); + req.indices_ref() = std::move(indices); cpp2::StatProp statProp; - statProp.set_alias("total age"); + statProp.alias_ref() = "total age"; const auto& exp = *TagPropertyExpression::make(pool, folly::to(1), "age"); - statProp.set_prop(Expression::encode(exp)); - statProp.set_stat(cpp2::StatType::SUM); + statProp.prop_ref() = Expression::encode(exp); + statProp.stat_ref() = cpp2::StatType::SUM; statProps.emplace_back(std::move(statProp)); - req.set_stat_columns(std::move(statProps)); + req.stat_columns_ref() = std::move(statProps); auto fut = processor->getFuture(); processor->process(req); @@ -3150,84 +3150,84 @@ TEST_P(LookupIndexTest, AggregateTagPropsTest) { cpp2::LookupIndexRequest req; nebula::storage::cpp2::IndexSpec indices; - req.set_space_id(spaceId); + req.space_id_ref() = spaceId; nebula::cpp2::SchemaID schemaId; - schemaId.set_tag_id(1); - indices.set_schema_id(schemaId); + schemaId.tag_id_ref() = 1; + indices.schema_id_ref() = schemaId; std::vector parts; for (int32_t p = 1; p <= totalParts; p++) { parts.emplace_back(p); } - req.set_parts(std::move(parts)); + req.parts_ref() = std::move(parts); std::vector returnCols; returnCols.emplace_back(kVid); returnCols.emplace_back(kTag); returnCols.emplace_back("age"); - req.set_return_columns(std::move(returnCols)); + req.return_columns_ref() = std::move(returnCols); // player.name_ == "Rudy Gay" cpp2::IndexColumnHint columnHint1; std::string name1 = "Rudy Gay"; - columnHint1.set_begin_value(Value(name1)); - columnHint1.set_column_name("name"); - columnHint1.set_scan_type(cpp2::ScanType::PREFIX); + columnHint1.begin_value_ref() = Value(name1); + columnHint1.column_name_ref() = "name"; + columnHint1.scan_type_ref() = cpp2::ScanType::PREFIX; // player.name_ == "Kobe Bryant" cpp2::IndexColumnHint columnHint2; std::string name2 = "Kobe Bryant"; - columnHint2.set_begin_value(Value(name2)); - columnHint2.set_column_name("name"); - columnHint2.set_scan_type(cpp2::ScanType::PREFIX); + columnHint2.begin_value_ref() = Value(name2); + columnHint2.column_name_ref() = "name"; + columnHint2.scan_type_ref() = cpp2::ScanType::PREFIX; std::vector columnHints1; columnHints1.emplace_back(std::move(columnHint1)); std::vector columnHints2; columnHints2.emplace_back(std::move(columnHint2)); cpp2::IndexQueryContext context1; - context1.set_column_hints(std::move(columnHints1)); - context1.set_filter(""); - context1.set_index_id(1); + context1.column_hints_ref() = std::move(columnHints1); + context1.filter_ref() = ""; + context1.index_id_ref() = 1; std::vector statProps; cpp2::IndexQueryContext context2; - context2.set_column_hints(std::move(columnHints2)); - context2.set_filter(""); - context2.set_index_id(1); + context2.column_hints_ref() = std::move(columnHints2); + context2.filter_ref() = ""; + context2.index_id_ref() = 1; decltype(indices.contexts) contexts; contexts.emplace_back(std::move(context1)); contexts.emplace_back(std::move(context2)); - indices.set_contexts(std::move(contexts)); - req.set_indices(std::move(indices)); + indices.contexts_ref() = std::move(contexts); + req.indices_ref() = std::move(indices); cpp2::StatProp statProp1; - statProp1.set_alias("total age"); + statProp1.alias_ref() = "total age"; const auto& exp1 = *TagPropertyExpression::make(pool, folly::to(1), "age"); - statProp1.set_prop(Expression::encode(exp1)); - statProp1.set_stat(cpp2::StatType::SUM); + statProp1.prop_ref() = Expression::encode(exp1); + statProp1.stat_ref() = cpp2::StatType::SUM; statProps.emplace_back(statProp1); cpp2::StatProp statProp2; - statProp2.set_alias("max age"); + statProp2.alias_ref() = "max age"; const auto& exp2 = *TagPropertyExpression::make(pool, folly::to(1), "age"); - statProp2.set_prop(Expression::encode(exp2)); - statProp2.set_stat(cpp2::StatType::MAX); + statProp2.prop_ref() = Expression::encode(exp2); + statProp2.stat_ref() = cpp2::StatType::MAX; statProps.emplace_back(statProp2); cpp2::StatProp statProp3; - statProp3.set_alias("max kVid"); + statProp3.alias_ref() = "max kVid"; const auto& exp3 = *TagPropertyExpression::make(pool, folly::to(1), kVid); - statProp3.set_prop(Expression::encode(exp3)); - statProp3.set_stat(cpp2::StatType::MAX); + statProp3.prop_ref() = Expression::encode(exp3); + statProp3.stat_ref() = cpp2::StatType::MAX; statProps.emplace_back(statProp3); cpp2::StatProp statProp4; - statProp4.set_alias("min age"); + statProp4.alias_ref() = "min age"; const auto& exp4 = *TagPropertyExpression::make(pool, folly::to(1), "age"); - statProp4.set_prop(Expression::encode(exp4)); - statProp4.set_stat(cpp2::StatType::MIN); + statProp4.prop_ref() = Expression::encode(exp4); + statProp4.stat_ref() = cpp2::StatType::MIN; statProps.emplace_back(statProp4); - req.set_stat_columns(std::move(statProps)); + req.stat_columns_ref() = std::move(statProps); auto fut = processor->getFuture(); processor->process(req); @@ -3284,15 +3284,15 @@ TEST_P(LookupIndexTest, AggregateEdgeIndexTest) { auto* processor = LookupProcessor::instance(env, nullptr, threadPool.get()); cpp2::LookupIndexRequest req; nebula::storage::cpp2::IndexSpec indices; - req.set_space_id(spaceId); + req.space_id_ref() = spaceId; nebula::cpp2::SchemaID schemaId; - schemaId.set_edge_type(102); - indices.set_schema_id(schemaId); + schemaId.edge_type_ref() = 102; + indices.schema_id_ref() = schemaId; std::vector parts; for (int32_t p = 1; p <= totalParts; p++) { parts.emplace_back(p); } - req.set_parts(std::move(parts)); + req.parts_ref() = std::move(parts); std::string tony = "Tony Parker"; std::string manu = "Manu Ginobili"; @@ -3305,52 +3305,52 @@ TEST_P(LookupIndexTest, AggregateEdgeIndexTest) { returnCols.emplace_back(kDst); returnCols.emplace_back("teamName"); returnCols.emplace_back("startYear"); - req.set_return_columns(std::move(returnCols)); + req.return_columns_ref() = std::move(returnCols); // teammates.player1 == "Tony Parker" cpp2::IndexColumnHint columnHint1; - columnHint1.set_begin_value(Value(tony)); - columnHint1.set_column_name("player1"); - columnHint1.set_scan_type(cpp2::ScanType::PREFIX); + columnHint1.begin_value_ref() = Value(tony); + columnHint1.column_name_ref() = "player1"; + columnHint1.scan_type_ref() = cpp2::ScanType::PREFIX; // teammates.player1 == "Yao Ming" cpp2::IndexColumnHint columnHint2; - columnHint2.set_begin_value(Value(yao)); - columnHint2.set_column_name("player1"); - columnHint2.set_scan_type(cpp2::ScanType::PREFIX); + columnHint2.begin_value_ref() = Value(yao); + columnHint2.column_name_ref() = "player1"; + columnHint2.scan_type_ref() = cpp2::ScanType::PREFIX; std::vector columnHints1; columnHints1.emplace_back(std::move(columnHint1)); std::vector columnHints2; columnHints2.emplace_back(std::move(columnHint2)); cpp2::IndexQueryContext context1; - context1.set_column_hints(std::move(columnHints1)); - context1.set_filter(""); - context1.set_index_id(102); + context1.column_hints_ref() = std::move(columnHints1); + context1.filter_ref() = ""; + context1.index_id_ref() = 102; cpp2::IndexQueryContext context2; - context2.set_column_hints(std::move(columnHints2)); - context2.set_filter(""); - context2.set_index_id(102); + context2.column_hints_ref() = std::move(columnHints2); + context2.filter_ref() = ""; + context2.index_id_ref() = 102; decltype(indices.contexts) contexts; contexts.emplace_back(std::move(context1)); contexts.emplace_back(std::move(context2)); - indices.set_contexts(std::move(contexts)); - req.set_indices(std::move(indices)); + indices.contexts_ref() = std::move(contexts); + req.indices_ref() = std::move(indices); std::vector statProps; cpp2::StatProp statProp1; - statProp1.set_alias("total startYear"); + statProp1.alias_ref() = "total startYear"; const auto& exp1 = *EdgePropertyExpression::make(pool, folly::to(102), "startYear"); - statProp1.set_prop(Expression::encode(exp1)); - statProp1.set_stat(cpp2::StatType::SUM); + statProp1.prop_ref() = Expression::encode(exp1); + statProp1.stat_ref() = cpp2::StatType::SUM; statProps.emplace_back(std::move(statProp1)); cpp2::StatProp statProp2; - statProp2.set_alias("max kDst"); + statProp2.alias_ref() = "max kDst"; const auto& exp2 = *EdgePropertyExpression::make(pool, folly::to(102), kDst); - statProp2.set_prop(Expression::encode(exp2)); - statProp2.set_stat(cpp2::StatType::MAX); + statProp2.prop_ref() = Expression::encode(exp2); + statProp2.stat_ref() = cpp2::StatType::MAX; statProps.emplace_back(std::move(statProp2)); - req.set_stat_columns(std::move(statProps)); + req.stat_columns_ref() = std::move(statProps); auto fut = processor->getFuture(); processor->process(req); @@ -3432,15 +3432,15 @@ TEST_P(LookupIndexTest, AggregateEdgePropNotInReturnColumnsTest) { auto* processor = LookupProcessor::instance(env, nullptr, threadPool.get()); cpp2::LookupIndexRequest req; nebula::storage::cpp2::IndexSpec indices; - req.set_space_id(spaceId); + req.space_id_ref() = spaceId; nebula::cpp2::SchemaID schemaId; - schemaId.set_edge_type(102); - indices.set_schema_id(schemaId); + schemaId.edge_type_ref() = 102; + indices.schema_id_ref() = schemaId; std::vector parts; for (int32_t p = 1; p <= totalParts; p++) { parts.emplace_back(p); } - req.set_parts(std::move(parts)); + req.parts_ref() = std::move(parts); std::string tony = "Tony Parker"; std::string manu = "Manu Ginobili"; @@ -3451,52 +3451,52 @@ TEST_P(LookupIndexTest, AggregateEdgePropNotInReturnColumnsTest) { returnCols.emplace_back(kType); returnCols.emplace_back(kRank); returnCols.emplace_back(kDst); - req.set_return_columns(std::move(returnCols)); + req.return_columns_ref() = std::move(returnCols); // teammates.player1 == "Tony Parker" cpp2::IndexColumnHint columnHint1; - columnHint1.set_begin_value(Value(tony)); - columnHint1.set_column_name("player1"); - columnHint1.set_scan_type(cpp2::ScanType::PREFIX); + columnHint1.begin_value_ref() = Value(tony); + columnHint1.column_name_ref() = "player1"; + columnHint1.scan_type_ref() = cpp2::ScanType::PREFIX; // teammates.player1 == "Yao Ming" cpp2::IndexColumnHint columnHint2; - columnHint2.set_begin_value(Value(yao)); - columnHint2.set_column_name("player1"); - columnHint2.set_scan_type(cpp2::ScanType::PREFIX); + columnHint2.begin_value_ref() = Value(yao); + columnHint2.column_name_ref() = "player1"; + columnHint2.scan_type_ref() = cpp2::ScanType::PREFIX; std::vector columnHints1; columnHints1.emplace_back(std::move(columnHint1)); std::vector columnHints2; columnHints2.emplace_back(std::move(columnHint2)); cpp2::IndexQueryContext context1; - context1.set_column_hints(std::move(columnHints1)); - context1.set_filter(""); - context1.set_index_id(102); + context1.column_hints_ref() = std::move(columnHints1); + context1.filter_ref() = ""; + context1.index_id_ref() = 102; cpp2::IndexQueryContext context2; - context2.set_column_hints(std::move(columnHints2)); - context2.set_filter(""); - context2.set_index_id(102); + context2.column_hints_ref() = std::move(columnHints2); + context2.filter_ref() = ""; + context2.index_id_ref() = 102; decltype(indices.contexts) contexts; contexts.emplace_back(std::move(context1)); contexts.emplace_back(std::move(context2)); - indices.set_contexts(std::move(contexts)); - req.set_indices(std::move(indices)); + indices.contexts_ref() = std::move(contexts); + req.indices_ref() = std::move(indices); std::vector statProps; cpp2::StatProp statProp1; - statProp1.set_alias("total startYear"); + statProp1.alias_ref() = "total startYear"; const auto& exp1 = *EdgePropertyExpression::make(pool, folly::to(102), "startYear"); - statProp1.set_prop(Expression::encode(exp1)); - statProp1.set_stat(cpp2::StatType::SUM); + statProp1.prop_ref() = Expression::encode(exp1); + statProp1.stat_ref() = cpp2::StatType::SUM; statProps.emplace_back(std::move(statProp1)); cpp2::StatProp statProp2; - statProp2.set_alias("count teamName"); + statProp2.alias_ref() = "count teamName"; const auto& exp2 = *EdgePropertyExpression::make(pool, folly::to(102), "teamName"); - statProp2.set_prop(Expression::encode(exp2)); - statProp2.set_stat(cpp2::StatType::COUNT); + statProp2.prop_ref() = Expression::encode(exp2); + statProp2.stat_ref() = cpp2::StatType::COUNT; statProps.emplace_back(std::move(statProp2)); - req.set_stat_columns(std::move(statProps)); + req.stat_columns_ref() = std::move(statProps); auto fut = processor->getFuture(); processor->process(req);