Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
None
-
None
-
None
-
None
Description
Tez throws a runtime exception when compiled against Hadoop-3.3.0.
With Tez running Guava (11.0.2) and Hadoop eunning Guava 27.0-jre (see HADOOP-16210), there is an incompatibility of Guava library.
[ERROR] Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.136 s <<< FAILURE! - in org.apache.tez.dag.app.TestSpeculation [ERROR] org.apache.tez.dag.app.TestSpeculation Time elapsed: 0.136 s <<< ERROR! java.lang.NoSuchMethodError: com.google.common.base.Preconditions.checkArgument(ZLjava/lang/String;Ljava/lang/Object;)V at org.apache.tez.dag.app.TestSpeculation.setupSpeculation(TestSpeculation.java:86)
It looks like guava added single parameter optimizations which breaks compatibility with VAR_ARGS. So, even though it shows source compatibility it is throwing a runtime error due to binary incompatibility.
Attachments
Issue Links
- is caused by
-
HADOOP-16210 Update guava to 27.0-jre in hadoop-project trunk
- Resolved
- relates to
-
TEZ-4150 Upgrade to hadoop 3.3
- Open
- supercedes
-
TEZ-2164 Shade the guava version used by Tez and move to guava-18
- Open