Return-Path: X-Original-To: apmail-hbase-dev-archive@www.apache.org Delivered-To: apmail-hbase-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 1B80F17262 for ; Fri, 13 Mar 2015 16:19:32 +0000 (UTC) Received: (qmail 52279 invoked by uid 500); 13 Mar 2015 16:19:31 -0000 Delivered-To: apmail-hbase-dev-archive@hbase.apache.org Received: (qmail 52179 invoked by uid 500); 13 Mar 2015 16:19:31 -0000 Mailing-List: contact dev-help@hbase.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@hbase.apache.org Delivered-To: mailing list dev@hbase.apache.org Received: (qmail 52167 invoked by uid 99); 13 Mar 2015 16:19:31 -0000 Received: from mail-relay.apache.org (HELO mail-relay.apache.org) (140.211.11.15) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 13 Mar 2015 16:19:31 +0000 Received: from mail-lb0-f176.google.com (mail-lb0-f176.google.com [209.85.217.176]) by mail-relay.apache.org (ASF Mail Server at mail-relay.apache.org) with ESMTPSA id AA5131A02C0 for ; Fri, 13 Mar 2015 16:19:30 +0000 (UTC) Received: by lbdu14 with SMTP id u14so23945324lbd.0 for ; Fri, 13 Mar 2015 09:19:28 -0700 (PDT) X-Received: by 10.152.5.36 with SMTP id p4mr43624312lap.7.1426263568723; Fri, 13 Mar 2015 09:19:28 -0700 (PDT) MIME-Version: 1.0 Received: by 10.25.87.20 with HTTP; Fri, 13 Mar 2015 09:18:48 -0700 (PDT) In-Reply-To: References: From: Andrew Purtell Date: Fri, 13 Mar 2015 09:18:48 -0700 Message-ID: Subject: Re: [DISCUSS] Dependency compatibility To: "dev@hbase.apache.org" Content-Type: multipart/alternative; boundary=089e013d17185eb71505112ddd8f --089e013d17185eb71505112ddd8f Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable > I'm -1 (non-binding) on weakening our compatibility promises. The more we= can isolate our users from the impact of changes upstream the better. We can't though in general. Making compatibility promises we can't keep because our upstreams don't (see the dependencies section of Hadoop's compatibility guidelines) is ultimately an untenable position. *If* we had some complete dependency isolation for MapReduce and coprocessors committed then this could be a different conversation. Am I misstating this? =E2=80=8BIn this specific instance we do have another option, so we could d= efer this to a later time when a really unavoidable dependency change happens... like a Guava update affecting HDFS. (We had one of those before.) We can document the Jackson classpath issue with Hadoop >=3D 2.6 and provide remediation advice in the troubleshooting section of the manual. I would be disappointed to see a VOTE thread. That means we failed to reach consensus and needed to fall back to process to resolve differences. Why don't we do the doc update and call it a day? On Thu, Mar 12, 2015 at 7:32 PM, Sean Busbey wrote: > On Thu, Mar 12, 2015 at 1:20 PM, Enis S=C3=B6ztutar = wrote: > > > This is good discussion, but I would like to reach a consensus and move > on > > with HBASE-13149. > > > > My conclusion from the thread is that we cannot be realistically expect= ed > > to keep dependency compat between minor versions because of lack of > shading > > in HBase and Hadoop, and our dependencies are themselves not semver, an= d > we > > cannot promise more than our dependencies promise. > > > > So I would like to formally drop support for dependency compat between > > minor versions as defined in > > https://hbase.apache.org/book.html#hbase.versioning. We can reintroduce > > later when we have better isolation/guarantees. In the mean time, we ca= n > > move on. > > > > > I'm -1 (non-binding) on weakening our compatibility promises. The more we > can isolate our users from the impact of changes upstream the better. If > our dependencies aren't semver it's all the more reason for us to be > disciplined about 1) accepting them as exposed in the first place and 2) > changing them. > > This is the first problem that has presented itself in the face of the > restrictions we adopted as a community. I don't care for the precedent of > us solving it by weakening those promises. For one thing, it reinforces > messaging from vendors that folks need them to protect against choices > individual projects make. > > If I have a solution that works to separate us from Hadoop when running o= n > YARN in Hadoop 2.6+ before 1.1 is ready, can we keep our compat at the > current strength? Some other deadline? AFAIK, we have no direct need for > Jackson 1.9. > > > > > The PMC has approved the compat guide, but I am not sure whether we nee= d > a > > VOTE thraed. What do you guys think? > > > > > My main concern with not having a VOTE thread is that some PMC members > might be more likely to pay attention to the matter if there's a VOTE, so= a > DISCUSS thread might only show consensus among a subset. > > Changes to the promises we make downstream are a big deal, so I'd prefer = to > err on the side of more participation. I'd also really like that VOTE > thread to include user@hbase, since this impacts downstream users more > than > us directly. > > -- > Sean > --=20 Best regards, - Andy Problems worthy of attack prove their worth by hitting back. - Piet Hein (via Tom White) --089e013d17185eb71505112ddd8f--