Fahd Siddiqui commented on SENTRY-2269:

[~akolb] - Basically, there are no backward compatibility guarantees on this 
interface. The external pluggable implementations of this interface have to 
deal with this reality. This is basically the same as HMS's RawStore pattern. 
This doesn't mean it can't be better in a follow on change. We should think 
about looking at the interface and breaking it up in some fashion that makes 
sense for maintainability. But, that is a design exercise of its own, and 
should be done separate to this change (hopefully soon).

Just to be sure, I am assuming when you say "modify the API", you mean modify 
the SentryStoreInterface. Sure, devs will want to do that, and as I said there 
is no backward compatibility guarantee to this interface. The pluggable 
implementations would have to upgrade with each breaking version.

> Make SentryStore pluggable
> --------------------------
>                 Key: SENTRY-2269
>                 URL: https://issues.apache.org/jira/browse/SENTRY-2269
>             Project: Sentry
>          Issue Type: Improvement
>          Components: sentrystore
>    Affects Versions: 2.1.0
>            Reporter: Fahd Siddiqui
>            Assignee: Fahd Siddiqui
>            Priority: Major
>         Attachments: SENTRY-2269.1.patch
> Make SentryStore pluggable so a different implementation can be plugged in at 
> run-time using a config property ("sentry.service.sentrystore"), similar to 
> what we have for processor factories. 
> This would entail extracting all public methods of SentryStore to a 
> SentryStoreInterface and converting all call sites to program to the 
> interface. 
> It will default to the existing SentryStore.

This message was sent by Atlassian JIRA

Reply via email to