Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Revamp explanations #4605

Closed
kasper-piskorski opened this issue Nov 15, 2018 · 2 comments
Closed

Revamp explanations #4605

kasper-piskorski opened this issue Nov 15, 2018 · 2 comments
Assignees

Comments

@kasper-piskorski
Copy link
Contributor

kasper-piskorski commented Nov 15, 2018

The grpc explanations are not in sync with the code, related issues:

@kasper-piskorski kasper-piskorski added this to the v1.5 milestone Nov 15, 2018
@kasper-piskorski kasper-piskorski self-assigned this Nov 15, 2018
@grabl grabl added the v1.5 label Nov 15, 2018
@haikalpribadi haikalpribadi modified the milestones: v1.5, v1.6 Mar 1, 2019
@haikalpribadi haikalpribadi removed this from the 1.6.0 milestone Jun 11, 2019
flyingsilverfin added a commit that referenced this issue Nov 1, 2019
## What is the goal of this PR?
Large explanations can break gRPC message limits, specifically nesting depth when returning deep explanation trees. With this change, each layer of the explanation tree can be retrieved from the server separately. This reflects the changes in the protocol here: vaticle/typedb-protocol#20. 

We retain the storage of Explanation trees on the Server, and expose a new RPC message with corresponding handler on the server to retrieve particular layers of the tree using the query pattern provided by the client. The query pattern is used to access the query cache directly.

Additionally, `pattern` in `ConceptMap`s now contain the IDs indicated in the actual concept map as well.

Finishes #4605, and #4545 

## What are the changes implemented in this PR?
* `Pattern` has been moved from `Explanation` to `ConceptMap`
* `Answer` interface is empty and requires further refactoring
* Propagate `Pattern` throughout reasoner conclusions
* Reconstruct `Explanation` objects from the query cache when the user requests an explanation a concept map
* Update some tests
* Solve previously unnoticed explanation bug: when re-querying the same query, the explanation is shallow (ie. a `LookupExplanation`) rather than the full reasoner tree
@flyingsilverfin
Copy link
Member

vaticle/typedb-driver-python#75 fixes one of these points

@flyingsilverfin
Copy link
Member

flyingsilverfin commented Apr 22, 2021

We've superceded the previous explanations with new style explanation queries in Grakn 2.0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants