accumulo-notifications mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Eric Newton (JIRA)" <>
Subject [jira] [Commented] (ACCUMULO-3019) Fix ServerConfiguration deprecation
Date Fri, 25 Jul 2014 15:48:39 GMT


Eric Newton commented on ACCUMULO-3019:

{{ServerConfiguration}} isn't officially in the public API, but since it is passed to a couple
of plug-ins, it basically is.  Sure, we can say "oh, that's not in the public API", but the
developers with 1000's of lines of code are not going to be happy when their custom load balancer
fails to run.  Also, we're becoming part of a much larger ecosystem, and forcing change on
users is getting less desirable.

I agree that the name {{ServerConfiguration}} is unfortunate, and I don't mind deprecating
it.  I just want to preserve backwards compatibility for extensions for as long as possible.

We can overload the methods that take {{ServerConfiguration}} and deprecate those.

> Fix ServerConfiguration deprecation
> -----------------------------------
>                 Key: ACCUMULO-3019
>                 URL:
>             Project: Accumulo
>          Issue Type: Sub-task
>          Components: master, tserver
>            Reporter: Eric Newton
>            Assignee: Eric Newton
>             Fix For: 1.7.0
> The deprecation of ServerConfiguration causes two problems:
> 1) eclipse is showing me ~300 warnings, so I'm missing other warnings in the noise
> 2) ServerConfiguration is passed to some plug-ins (Balancer, at least), so any existing
plug-ins are broken by the change.
> In the past, I would have been fine with just switching to the new class {{ServerConfigurationFactory}}
but a growing user base and petabytes of existing systems gives me pause.
> Instead, I'm thinking we hoist the most popular methods to an abstract ServerConfiguration,
and provide ServerConfiguationFactory as the implementation.  This way the extensions continue
to work.
> I'm still not sure what to do about static calls to get the SiteConfiguration.

This message was sent by Atlassian JIRA

View raw message