Return-Path: X-Original-To: apmail-accumulo-dev-archive@www.apache.org Delivered-To: apmail-accumulo-dev-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 857A617A1B for ; Thu, 6 Nov 2014 00:46:23 +0000 (UTC) Received: (qmail 90543 invoked by uid 500); 6 Nov 2014 00:46:23 -0000 Delivered-To: apmail-accumulo-dev-archive@accumulo.apache.org Received: (qmail 90504 invoked by uid 500); 6 Nov 2014 00:46:23 -0000 Mailing-List: contact dev-help@accumulo.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@accumulo.apache.org Delivered-To: mailing list dev@accumulo.apache.org Received: (qmail 90491 invoked by uid 99); 6 Nov 2014 00:46:23 -0000 Received: from mail-relay.apache.org (HELO mail-relay.apache.org) (140.211.11.15) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 06 Nov 2014 00:46:23 +0000 Received: from mail-ig0-f178.google.com (mail-ig0-f178.google.com [209.85.213.178]) by mail-relay.apache.org (ASF Mail Server at mail-relay.apache.org) with ESMTPSA id C79401A04DF for ; Thu, 6 Nov 2014 00:45:36 +0000 (UTC) Received: by mail-ig0-f178.google.com with SMTP id a13so2488099igq.5 for ; Wed, 05 Nov 2014 16:46:22 -0800 (PST) MIME-Version: 1.0 X-Received: by 10.50.143.73 with SMTP id sc9mr23505975igb.27.1415234782118; Wed, 05 Nov 2014 16:46:22 -0800 (PST) Received: by 10.64.243.98 with HTTP; Wed, 5 Nov 2014 16:46:22 -0800 (PST) In-Reply-To: <545AC17D.3030503@gmail.com> References: <545AC17D.3030503@gmail.com> Date: Wed, 5 Nov 2014 19:46:22 -0500 Message-ID: Subject: Re: TabletLocator API stability / alternates? From: Christopher To: Accumulo Dev List Content-Type: multipart/alternative; boundary=001a1134cb0e764cb805072606f8 --001a1134cb0e764cb805072606f8 Content-Type: text/plain; charset=UTF-8 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 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?) >> >> --001a1134cb0e764cb805072606f8--