accumulo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Chris Bennight <ch...@slowcar.net>
Subject Re: TabletLocator API stability / alternates?
Date Thu, 06 Nov 2014 05:08:50 GMT
Thanks for sitrep and tickets.  Definitely willing to pitch in on the use
cases - we can add some comments/use cases/opinions to the ticket
Christopher T. referenced (2883), and take it from there.

Chris Bennight


On Wed, Nov 5, 2014 at 6:46 PM, Christopher <ctubbsii@apache.org> wrote:

> We definitely don't have any public API for this, but I can imagine, and
> would be in favor of, an API improvement in 2.0.0 that exposes tablets.
> There's already an open issue for it:
> https://issues.apache.org/jira/browse/ACCUMULO-2883.
>
>
> --
> Christopher L Tubbs II
> http://gravatar.com/ctubbsii
>
> On Wed, Nov 5, 2014 at 7:31 PM, Josh Elser <josh.elser@gmail.com> wrote:
>
> > I don't think there is any class/method that we consider to be in our
> > "Public API" that does what you want.
> >
> > You're also not the first one that has tried to do something using
> > TabletLocator and has been bitten by it (https://issues.apache.org/
> > jira/browse/ACCUMULO-2594).
> >
> > At this point, I think we should look at bringing tablet locality into
> the
> > public API for 1.7.0 or 2.0.0. Would you be interested in filing an issue
> > on JIRA and helping to flesh out the functionality requirements?
> >
> >
> > Chris Bennight wrote:
> >
> >> So we have some code (a custom input format for data persisted in
> accumulo
> >> with a custom indexing scheme (geospatial/n-dimensional)):
> >>
> >> https://github.com/ngageoint/geowave/blob/GEOWAVE-84-
> >> squash/geowave-accumulo/src/main/java/mil/nga/giat/
> >> geowave/accumulo/mapreduce/input/GeoWaveInputFormat.java#L355
> >>
> >> The intent behind this was to provide better locality and split
> >> information
> >> since we have a bit more application specific knowledge available than
> the
> >> general use case.
> >>
> >> I'm pretty sure there's no other way to get this locality information
> >> other
> >> than using the TableLocator class.
> >>
> >> The arguments + ordering change for TCredentials to Credentials and the
> >> method signature from getInstance() to getLocator() are the two things
> >> breaking our 1.5.1 ->  1.6.x compatibility.
> >> (specifically:
> >>
> https://github.com/apache/accumulo/commit/99da5641c28784c7b717cce6749673
> >> 863c2ec8cf#diff-c45768534f53d5455cc05c75676fb871R49
> >>
> https://github.com/apache/accumulo/commit/446a37a9795f2df7adc841154ca05a
> >> dd79cf286e#diff-c45768534f53d5455cc05c75676fb871R95
> >> )
> >>
> >> It's pretty obvious from the diff these were intentional - so no joy
> there
> >> in accidental changes that could be fixed.
> >>
> >> Are we just to far down in the weeds, and are going to have to deal with
> >> supporting multiple versions/breaking changes (via refactoring, dropping
> >> support, or maven-munge maybe), or is this class/methods/signatures
> >> expected to be pretty stable now?
> >>
> >> (Or is there a better/more supported way of getting tablet locality
> >> information?)
> >>
> >>
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message