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

Create endpoint to get store type #2838

Closed
t92549 opened this issue Dec 2, 2022 · 2 comments · Fixed by #3021
Closed

Create endpoint to get store type #2838

t92549 opened this issue Dec 2, 2022 · 2 comments · Fixed by #3021
Assignees
Labels
feature A proposed new feature good first issue Small, lower complexity and doesn't require pre-existing Gaffer knowledge rest-api Specific to/touches a part of the REST API
Milestone

Comments

@t92549
Copy link
Contributor

t92549 commented Dec 2, 2022

Describe the new feature you'd like
An endpoint that would tell you what type of store you are querying.

Why do you want this feature?
Currently it is not possible to know if the graph you are querying is backed by a FederatedStore, an AccumuloStore, a ProxyStore or a MapStore. You can still ask what operations are available, but sometimes it is useful to know the store type.

Additional context
The entire store properties cannot be returned as they can contain information that should not be seen by users.

@t92549 t92549 added enhancement Improvement to existing functionality/feature good first issue Small, lower complexity and doesn't require pre-existing Gaffer knowledge labels Dec 2, 2022
@t92549 t92549 added this to the post-v2.0_backlog milestone Dec 2, 2022
@GCHQDeveloper314 GCHQDeveloper314 added rest-api Specific to/touches a part of the REST API feature A proposed new feature and removed enhancement Improvement to existing functionality/feature labels Jul 12, 2023
@GCHQDeveloper314
Copy link
Member

What if we want to know what type of graph is the final backing graph? For example in the setup below this would return ProxyStore but I'm not sure how useful that is.

graph LR;
    User-->NearProxyStore;
    NearProxyStore-->FederatedStore;
    FederatedStore-->FarProxyStore;
    FarProxyStore-->AccumuloStore;
Loading

I think if we wanted to know the kind of remote store, then a new Operation would be required. This could be a follow up issue, not something to be done under this issue.

@GCHQDeveloper314
Copy link
Member

GCHQDeveloper314 commented Sep 7, 2023

As discussed in the related Gaffer version endpoint issue, this issue is just to create an endpoint which returns the type of Gaffer Store used in the endpoint itself. This will not allow for determining the type of store at the end of any chain of stores.

An operation would allow this, but that's not in scope of this ticket. As covered in the related ticket, if the local Gaffer instance is a ProxyStore it will not be possible to determine its store type using an operation, as this will always be passed through the proxy store and forwarded on. An endpoint will therefore be useful, and will only partially overlap with the capabilities of an operation.

GCHQDeveloper314 added a commit that referenced this issue Sep 13, 2023
* added endpoints to spring-rest and core-rest

* added testing to endpoints

---------

Co-authored-by: GCHQDeveloper314 <94527357+GCHQDeveloper314@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature A proposed new feature good first issue Small, lower complexity and doesn't require pre-existing Gaffer knowledge rest-api Specific to/touches a part of the REST API
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants