[
https://issues.apache.org/jira/browse/CRUNCH-626?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15711923#comment-15711923
]
Micah Whitacre commented on CRUNCH-626:
---------------------------------------
Yeah with the HBase, Spark, Scala changes, we probably need to develop a
strategy for versioning and compatibility between them.
> HBaseSourceTarget Binary compatibility across HBase versions
> ------------------------------------------------------------
>
> Key: CRUNCH-626
> URL: https://issues.apache.org/jira/browse/CRUNCH-626
> Project: Crunch
> Issue Type: Improvement
> Components: IO
> Reporter: Micah Whitacre
> Assignee: Micah Whitacre
> Attachments: CRUNCH-626.patch
>
>
> Currently Crunch targets HBase 1.0. Certain vendors however are trying to
> maintain API compatibility with HBase 0.96, 0.98, 1.0, and all 1.x.
> While the API compatibility is ok across these versions, it was however not
> binary compatible as HBase changed the method signature from returning
> void[1] to returning OperationWithAttributes[1] (and in later versions Scan).
> This results in an exception like the following, when you try to use the
> latest Crunch 0.14 release against that vendor's distribution of HBase which
> we should be theoretically compatible with.
> {noformat}
> java.lang.NoSuchMethodError:
> org.apache.hadoop.hbase.client.Scan.setAttribute(Ljava/lang/String;[B)Lorg/apache/hadoop/hbase/client/Scan;
> at
> org.apache.crunch.io.hbase.HBaseSourceTarget.<init>(HBaseSourceTarget.java:112)
> at
> org.apache.crunch.io.hbase.HBaseSourceTarget.<init>(HBaseSourceTarget.java:96)
> at
> org.apache.crunch.io.hbase.HBaseSourceTarget.<init>(HBaseSourceTarget.java:88)
> {noformat}
> [1] -
> https://github.com/apache/hbase/blob/rel/0.98.0/hbase-client/src/main/java/org/apache/hadoop/hbase/client/OperationWithAttributes.java#L40
> [2] -
> https://github.com/apache/hbase/blob/rel/1.0.0/hbase-client/src/main/java/org/apache/hadoop/hbase/client/OperationWithAttributes.java#L41
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)