accumulo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Sean Busbey <bus...@cloudera.com>
Subject [DISCUSS] packaging our dependencies
Date Sun, 11 May 2014 20:45:24 GMT
ACCUMULO-2786 has brought up the issue of what dependencies we bring with
Accumulo rather than depend on the environment providing[1].

Christopher explains our extant reasoning thus

> The precedent has been: if vanilla Apache Hadoop provides it in its bin
tarball, we don't need to.

I'd like us to move to packaging any dependencies that aren't brought in by
Hadoop Client.

1) Our existing practice developed before Hadoop Client existed, so we
essentially *had* to have all of the Hadoop related deps on our classpath.
For versions where we default to Hadoop 2, we can improve things.

2) We should encourage users to follow good practice by minimizing the
number of jars added to the classpath.

3) We have to still include the jars found in Hadoop Client because we use
hadoop.

4) Limiting the dependencies we rely on external sources to provide allows
us to update more of our dependencies to current versions.

5) Minimizing the number of jars we rely on from external sources reduces
the chances that they change out from under us (and thus reduces the number
of external factors we have to remain cognizant of)

6) Minimizing the classpath reduces the chances of having multiple
different versions of the same library present.

I'd also like for us to *not* package any of the jars brought in by Hadoop
Client. Due to the additional work it would take to downgrade our version
of guava, I'd like to wait to do that.

[1]: https://issues.apache.org/jira/browse/ACCUMULO-2786

-- 
Sean

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