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 D8A3F18B08 for ; Thu, 24 Mar 2016 21:49:07 +0000 (UTC) Received: (qmail 49914 invoked by uid 500); 24 Mar 2016 21:49:07 -0000 Delivered-To: apmail-accumulo-dev-archive@accumulo.apache.org Received: (qmail 49867 invoked by uid 500); 24 Mar 2016 21:49:07 -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 49855 invoked by uid 99); 24 Mar 2016 21:49:07 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd1-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 24 Mar 2016 21:49:07 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd1-us-west.apache.org (ASF Mail Server at spamd1-us-west.apache.org) with ESMTP id D7E9BC2E5D for ; Thu, 24 Mar 2016 21:49:06 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd1-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 1.279 X-Spam-Level: * X-Spam-Status: No, score=1.279 tagged_above=-999 required=6.31 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=2, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001] autolearn=disabled Authentication-Results: spamd1-us-west.apache.org (amavisd-new); dkim=pass (2048-bit key) header.d=cloudera-com.20150623.gappssmtp.com Received: from mx2-lw-us.apache.org ([10.40.0.8]) by localhost (spamd1-us-west.apache.org [10.40.0.7]) (amavisd-new, port 10024) with ESMTP id R1JR8D70l0aR for ; Thu, 24 Mar 2016 21:49:05 +0000 (UTC) Received: from mail-lb0-f174.google.com (mail-lb0-f174.google.com [209.85.217.174]) by mx2-lw-us.apache.org (ASF Mail Server at mx2-lw-us.apache.org) with ESMTPS id 465265F1B8 for ; Thu, 24 Mar 2016 21:49:05 +0000 (UTC) Received: by mail-lb0-f174.google.com with SMTP id oe12so39316590lbc.0 for ; Thu, 24 Mar 2016 14:49:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloudera-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:from:date:message-id:subject:to; bh=fSnXf63pxzLWqMVljJnN+tE8tvLDNSoIqcIHnJnKkrQ=; b=GFt+WvifZWGkDvVefC406DxiuYPtSGD0h2Pz2p6IsPg6AlFXaDFE3mm2PhjnUb2Poq M6uK1hEovurv2e/bMimckwKKh8SDWAnxIKX7LQauNOCfF6cujp0nt+5xC3tuAfUkl11t 13kLMZpZ0w42xa9d/+HqPonyrmE0DixjlTOQyNdbM9DlRArqAKU6K+yQXFZ1W4SrEvky 0YUHdc+j7cb747VPaZrCCkn5oDCz64Tg4zGcl8KH3djtgd4ZC7HW7Q1p5Ii0q+C/KnE0 rmbkegGfKEpRqTF6SWLIHi4Uy1Dk5Ts69j4eFYaCS2F6h6FUSeN8c92rRHnbD7MFDtv4 X4xg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to; bh=fSnXf63pxzLWqMVljJnN+tE8tvLDNSoIqcIHnJnKkrQ=; b=aTderjRThH8aJgTiUx7he3UXtCcnSA6pv9rtfEIWAN3n33OoAZvcq+LlPyzTi63cBR 2U1Ve/CCcoyBBwQVVqvscTxVJlIZSNAR4gqd8XtmpbqHxlfTcxfgc8Gylg3c6bmk/WSJ pxAHupV5zfk0TGY7fx5UbHtamxph8jbXNDNOYzx2VFnpQ/jS3SJyJllE0B6AUp9pzqRK sw0LOf0NSgm4v6YXIjpgQNVjv0JZ0/VY2T5Ni1odZWIc1ZezDRSEpRFziPMMwh5lEOCN lA/3/8Da0rwuZuDDwKyY9ylQl+hHBBcgpQs+tKHqB20Ym0H4vvS0TDFyezvu0cAhqaip OKMQ== X-Gm-Message-State: AD7BkJKSjjHP8zvhEhoNgXEpfzkee57iEOzb1/DXPbVF6OrumyJ3ORSQodkWhn0rpdtQPIPiLFCFYqFQjd2Kodc7 X-Received: by 10.112.198.65 with SMTP id ja1mr4337760lbc.123.1458856138372; Thu, 24 Mar 2016 14:48:58 -0700 (PDT) MIME-Version: 1.0 Received: by 10.25.76.132 with HTTP; Thu, 24 Mar 2016 14:48:38 -0700 (PDT) In-Reply-To: References: From: Sean Busbey Date: Thu, 24 Mar 2016 16:48:38 -0500 Message-ID: Subject: Re: Pros and Cons of moving SKVI to public API To: "dev@accumulo apache. org" Content-Type: multipart/alternative; boundary=001a11c3409ae8210b052ed26904 --001a11c3409ae8210b052ed26904 Content-Type: text/plain; charset=UTF-8 We could switch from a list of packages to annotations using the Apache Yetus Audience Annotations. http://yetus.apache.org/documentation/0.2.0/#yetus-audience-annotations That would allow us to mark specific classes, and even carve out particular methods should we choose. On Thu, Mar 24, 2016 at 3:15 PM, Christopher wrote: > We do have the opportunity to move to a new improved API, if somebody were > to put time into it. I guess that's true whether we put this in the public > API officially or not. I think maybe the hardest part is that we don't > really want to put just the interface in the API... but it exists in a > package with a bunch of other classes which probably shouldn't be public > API. So, some thought needs to be put into *how* we're going to do it, too. > > On Thu, Mar 24, 2016 at 3:27 PM William Slacum wrote: > > > It should be public API. It's one of the core reasons for choosing > Accumulo > > over a similar project like HBase or Cassandra. Allegedly, Jeff "Mean > Gene" > > Dean said we got the concept correct as well :) > > > > Personally I hate the current API from a usability standpoint (ie, the > > generic types are useless and already encoded in the name, it needlessly > > diverges from the standard java Iterator calling standards), but it's a > > strong, identifying feature we have. > > > > On Thu, Mar 24, 2016 at 2:50 PM, Christopher > wrote: > > > > > Accumulators, > > > > > > What are the pros and cons that you can see for moving the > > > SortedKeyValueIterator into the public API? > > > > > > Right now, I think there's still some need for improvement in the > > Iterator > > > API, and many of the iterators may not be stable enough to really > > recommend > > > people use without some serious caveats (because we may not be able to > > keep > > > their API stable very easily). So, there's a con. > > > > > > In the pros side, iterators are a core feature of Accumulo, and nearly > > all > > > of Accumulo's distributed processing capabilities are dependent upon > > them. > > > It is reasonable to expect users to take advantage of them, and we've > at > > > least tried to be cautious about changing the iterators in incompatible > > > ways, even if they aren't in the public API. > > > > > > Recently, this came up when we stripped out all the non-public API > > javadocs > > > from the website. (reported by Dan Blum on the user list on March 4th: > > > > > > > > > http://mail-archives.apache.org/mod_mbox/accumulo-user/201603.mbox/%3C066a01d17658%24bc9dc1b0%2435d94510%24%40bbn.com%3E > > > ) > > > > > > What would it take for us to feel comfortable moving them to the public > > > API? Do we need a better interface first, or should we isolate the > other > > > iterators into another package (some of that has already been done), or > > > should we wait for a proper public API package (2.0?) to provide this > > > interface in? > > > > > > -- busbey --001a11c3409ae8210b052ed26904--