MCPcopy Create free account
hub / github.com/alibaba/GraphScope / QueryProjected

Function QueryProjected

analytical_engine/test/run_java_app.cc:342–467  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

340
341template <typename ProjectedFragmentType>
342void QueryProjected(
343 vineyard::Client& client, std::shared_ptr<ProjectedFragmentType> fragment,
344 const grape::CommSpec& comm_spec, const std::string& app_name,
345 const std::string& out_prefix, const std::string& basic_params,
346 const std::string& selector_string, const std::string& selectors_string,
347 int32_t expected_data_type, vineyard::AnyType expected_tensor_type) {
348 using AppType = gs::JavaPIEProjectedParallelAppOE<ProjectedFragmentType>;
349 auto app = std::make_shared<AppType>();
350 auto worker = AppType::CreateWorker(app, fragment);
351 auto spec = grape::DefaultParallelEngineSpec();
352 worker->Init(comm_spec, spec);
353 std::string lib_path = "";
354 worker->Query(basic_params, lib_path);
355 std::ofstream ostream;
356 std::string output_path =
357 grape::GetResultFilename(out_prefix, fragment->fid());
358
359 ostream.open(output_path);
360 worker->Output(ostream);
361 ostream.close();
362
363 std::shared_ptr<gs::JavaPIEProjectedContext<ProjectedFragmentType>> ctx =
364 worker->GetContext();
365 worker->Finalize();
366
367 gs::rpc::graph::GraphDefPb graph_def;
368 graph_def.set_graph_type(gs::rpc::graph::ARROW_PROJECTED);
369
370 auto selectors = gs::Selector::ParseSelectors(selectors_string).value();
371 auto selector = gs::Selector::parse(selector_string).value();
372 auto range = std::make_pair("", "");
373
374 auto frag_wrapper =
375 std::make_shared<gs::FragmentWrapper<ProjectedFragmentType>>(
376 "graph_123", graph_def, fragment);
377
378 auto ctx_wrapper = ctx->CreateInnerCtxWrapper(
379 "ctx_wrapper_" + vineyard::random_string(8), frag_wrapper);
380 if (ctx_wrapper->context_type() == "vertex_property") {
381 auto vp_ctx_wrapper =
382 std::dynamic_pointer_cast<gs::IVertexPropertyContextWrapper>(
383 ctx_wrapper);
384 /// 0. test ndarray
385 {
386 std::unique_ptr<grape::InArchive> arc = std::move(
387 vp_ctx_wrapper->ToNdArray(comm_spec, selector, range).value());
388 std::string java_out_prefix =
389 out_prefix + "/java_projected_assembled_ndarray.dat";
390 output_nd_array(comm_spec, std::move(arc), java_out_prefix,
391 expected_data_type); // 4 for int64_t
392 }
393 VLOG(1) << "[0] java projected finish test ndarray";
394
395 // 1. Test data frame
396 {
397 // auto selectors =
398 // gs::gs::Selector::ParseSelectors(s_selectors).value();
399 std::unique_ptr<grape::InArchive> arc = std::move(

Callers 1

RunFunction · 0.70

Calls 15

output_data_frameFunction · 0.85
output_nd_arrayFunction · 0.70
InitMethod · 0.65
fidMethod · 0.65
OutputMethod · 0.65
closeMethod · 0.65
valueMethod · 0.65
CreateWorkerFunction · 0.50
random_stringFunction · 0.50
QueryMethod · 0.45
openMethod · 0.45
GetContextMethod · 0.45

Tested by

no test coverage detected