[
https://issues.apache.org/jira/browse/HBASE-3873?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Alejandro Abdelnur updated HBASE-3873:
--------------------------------------
Attachment: HBASE-3873.patch
The attached patch takes care of including the snappy & hadoop-snappy SO files
in the TARBALL if the -Dsnappy option was given to maven. For example:
{code}
$ mvn package -Dsnappy
{code}
The SO files are in the lib/native/${ARCH} directory (the hbase scripts add
that dir to the LD_PATH same as Hadoop -thanks for the tip Todd-).
The assembly has been changed to generate an expanded directory instead the
TARBALL. And the antrun plugin has been wired to the package phase to create
the TARBALL using Unix {{tar}} command.
This change is needed to preserve symlinks (Maven assembly is dumb when it
comes to symlinks).
> Mavenize Hadoop Snappy JAR/SOs project dependencies
> ---------------------------------------------------
>
> Key: HBASE-3873
> URL: https://issues.apache.org/jira/browse/HBASE-3873
> Project: HBase
> Issue Type: Improvement
> Components: build
> Affects Versions: 0.90.2
> Environment: Linux
> Reporter: Alejandro Abdelnur
> Assignee: Alejandro Abdelnur
> Labels: build
> Attachments: HBASE-3873.patch, HBASE-3873.patch
>
>
> (This JIRA builds on HBASE-3691)
> I'm working on simplifying how to use Hadoop Snappy from other based maven
> projects. The idea is that hadoop-snappy JAR and the SOs (snappy and
> hadoop-snappy) would be picked up from a Maven repository (like any other
> dependencies). SO files will be picked up based on the architecture where the
> build is running (32 or 64 bits).
> For Hbase this would remove the need to manually copy snappy JAR and SOs
> (snappy and hadoop-snappy) into HADOOP_HOME/lib or HBASE_HOME/lib and
> hadoop-snappy would be handled as a regular maven dependency (with a trick
> for the SOs file).
> The changes would affect only the pom.xml and the would be in a 'snappy'
> profile, thus requiring '-Dsnappy' option in Maven invocations to trigger the
> including of snappy JAR and SOs.
> Because hadoop-snappy (JAR and SOs) are not currently avail in public Maven
> repos, until that happens, Hbase developer would have to checkout and 'mvn
> install' hadoop-snappy. Which is (IMO) simpler than what will have to be done
> in once HBASE-3691 is committed.
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira