[
https://issues.apache.org/jira/browse/AVRO-545?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12908268#action_12908268
]
Doug Cutting commented on AVRO-545:
-----------------------------------
> if Hadoop changes a method, it can require a new release of avro to use the
> two together
That seems true regardless of whether Avro's jars are split. If Hadoop changes
a method, Hadoop could continue to use its existing version of Avro, since
Hadoop itself does not call the Avro methods that might call that changed
method. It would break users of Avro's MR API, but they'd be broken anyway
until Avro's MR code is updated. Also, the APIs that Avro uses are APIs that
Hadoop has promised not to change, and Avro will not consider updating to newer
Hadoop APIs until 0.22 has mostly replaced 0.20 in production, i.e., not for a
while.
I don't see that upgrading Hadoop to Avro 1.4.0 would create a regression for
users of Hadoop. Without a regression, I don't see how this should be a
blocking issue.
The argument for breaking up jars that Scott made in AVRO-647 is that it would
permit our POMs to more precisely specify dependencies, so that, e.g., folks
who don't use RPC don't pull in Jetty, which sounds like a useful improvement.
So I'd be okay committing a patch that creates POMs for new jars, etc. But I'd
rather see this done once, as a complete fix for AVRO-647 rather than piecemeal
here, so that we only force Avro users to update their dependencies once. I
also believe that such an incompatible change would be more appropriate for
Avro 1.5.0 than 1.4.1. By the time that Hadoop removes its 0.20 APIs we'll
long since have split Avro into multiple jars.
So my proposal is that we remove this as a blocker for Avro 1.4.1 but add
AVRO-647 to the plan for Avro 1.5.0, which should be out before the end of the
year.
> Move mapreduce bindings out of avro jar
> ---------------------------------------
>
> Key: AVRO-545
> URL: https://issues.apache.org/jira/browse/AVRO-545
> Project: Avro
> Issue Type: Sub-task
> Components: java
> Affects Versions: 1.4.0
> Reporter: Owen O'Malley
> Assignee: Owen O'Malley
> Priority: Blocker
> Fix For: 1.4.1
>
> Attachments: avro-545.patch
>
>
> MapReduce should not depend on any jars (eg. avro's main jar) that also
> depend on the MapReduce jar.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.