>There's no reason our HDFS usage should be exposed in the HBase client code
I did look at this in the past, IIRC, our dependency was we use
hadoop-common code to read our XML configuration files....
I would +1 a code duplication to remove the dependency.

I also think it is important for the end user.


On Fri, Mar 13, 2015 at 5:43 PM, Sean Busbey <bus...@cloudera.com> wrote:

> On Fri, Mar 13, 2015 at 11:18 AM, Andrew Purtell <apurt...@apache.org>
> wrote:
>
> > > 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?
> >
>
>
> > ​In this specific instance we do have another option, so we could defer
> > 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 >= 2.6 and provide
> > remediation advice in the troubleshooting section of the manual.
> >
> >
> I think we can solve this generally for Hadoop 2.6.0+. There's no reason
> our HDFS usage should be exposed in the HBase client code, and I think the
> application classpath feature for YARN in that version can isolate us on
> the MR side. I am willing to do this work in time for 1.1. Realistically I
> don't know the timeline for that version yet. If it turns out the work is
> more involved or my time is more constrained then I think, I'm willing to
> accept promise weakening as a practical matter.
>
> I'd be much more comfortable weakening our dependency promises for
> coprocessor than doing it in general. Folks running coprocessors should
> already be more risk tolerant and familiar with our internals.
>
> For upstreams that don't have the leverage on us of Hadoop, we solve this
> problem simply by not updating dependencies that we can't trust to not
> break our downstreams.
>
>
>
> > 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.
> >
> >
>
> That's fair. What about the wider audience issue on user@? There's no
> reason our DISCUSS threads couldn't go there as well.
>
>
>
> > Why don't we do the doc update and call it a day?
> >
>
> I've been burned by dependency changes in projects I rely on many times in
> the past, usually over changes in code sections that folks didn't think
> were likely to be used. So I'm very willing to do work now to save
> downstream users of HBase that same headache.
>
> --
> Sean
>

Reply via email to