alibaba / alibaba/GraphScope

feature(interactive): Unify `ProcedureCall` Into Physical Plan Operators

Open
#4,075 1 comment 0 reactions 2 assignees Claimed by @shirly121 View on GitHub
component:gie stale
Dominant language
C++
Stars
3.6k
Forks
468
Avg merge
29m
Merged PRs (30d)
1

Description

**Is your feature request related to a problem? Please describe.**

The shortest path functionality needs to support queries similar to the following:
```
MATCH
(company:Company {name: $company})<-[:WORK_AT]-(person1:Person),
(person2:Person {id: $person2Id})
CALL shortestPath.dijkstra.stream(
person1, person2, 'KNOWS', 'BOTH', 'weight', 5
)
YIELD totalCost
WHERE person1.id <> $person2Id
WITH person1.id AS person1Id, totalCost AS totalWeight
....
```
, which requires the `ProcedureCall` to be integrated as an operator into the entire physical plan.

Proto definition of `ProcedureCall`:
```
message Argument {
string param_name = 1; // param name
int32 param_ind = 2; // index of param
common.Value value = 3; // real value
}

message Query {
common.NameOrId query_name = 1;
repeated Argument arguments = 2;
}
```

The compiler should support registering stored procedures through YAML configuration files and support passing tag types as parameters.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.