Gaffer icon indicating copy to clipboard operation
Gaffer copied to clipboard

New Operation to get Gaffer store type

Open GCHQDeveloper314 opened this issue 9 months ago • 0 comments

Describe the new feature you'd like A new Gaffer Operation to get the Gaffer store type for a Gaffer graph. This would be able to retrieve the store type for remote graphs and Federated subgraphs.

Why do you want this feature? An endpoint for getting the store type was added to the REST APIs (in #2838). However this only gets the version of Gaffer for the store directly connected to the REST endpoint. The endpoint doesn't allow for retrieving the store type for a remote store connected via a proxy, or a store which is a subgraph of a Federated store.

This diagram shows the endpoint of a Federated store in relation to the federated subgraphs:

graph LR
U[User] --> AF
subgraph "Gaffer Instance"
direction LR
    subgraph "REST Endpoint"
    direction LR
    AF((Federated \nStore))
    end
    subgraph "Federated Subgraphs"
    direction LR
    AF -- ID=localAcc --> LA((Accumulo \nStore))
    AF -- ID=localMap --> LB((Map \nStore))
    end
end

The endpoint doesn't allow for fetching the type of Gaffer store used in any of the subgraphs. It will only return the type of Gaffer store used at the endpoint. For the above this is the Federated Store. There is no way to fetch details of the store types used in the subgraphs using an endpoint.

Describe alternatives you've considered No known alternatives.

Additional context This should use a similar approach to find the store type as used in #2838. Also see that issue for more background.

When this is complete, an issue should also be raised on gaffer-doc to add documentation for the new operation.

GCHQDeveloper314 avatar Sep 13 '23 08:09 GCHQDeveloper314