[ https://issues.apache.org/jira/browse/CRUNCH-696?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17105434#comment-17105434 ]
Ben Roling commented on CRUNCH-696: ----------------------------------- I don't think this would be an issue that typical Crunch users would encounter. For it to happen, multiple versions of Crunch have to come into play in the execution of a single Crunch pipeline. Normally that would not happen. The Crunch version is usually supplied by the user code and a single classpath is used for the pipeline. One scenario where I can imagine it might occur is if Crunch is treated as a cluster-provided dependency. In that case around the time of a Crunch upgrade in the cluster, a job may be submitted with the old version of Crunch and then executed with the new version. I'm not sure if any users are treating Crunch as cluster-provided? I know in our organization we don't do that. I have created a patch we could apply to address that case if desired: https://github.com/apache/crunch/pull/33 > EOFException in App Master from FormatBundle#fromSerialized > ----------------------------------------------------------- > > Key: CRUNCH-696 > URL: https://issues.apache.org/jira/browse/CRUNCH-696 > Project: Crunch > Issue Type: Bug > Components: Core > Affects Versions: 1.0.0 > Reporter: Andrew Olson > Assignee: Josh Wills > Priority: Major > > After CRUNCH-685 if there's a version mismatch between what a job was > launched with and what it runs with in the cluster, a job can fail to start > with an EOFException in the application master as shown below. > {noformat} > 2019-10-11 14:36:41,327 INFO [main] > org.apache.hadoop.service.AbstractService: Service > org.apache.hadoop.mapreduce.v2.app.MRAppMaster failed in state INITED; cause: > org.apache.hadoop.yarn.exceptions.YarnRuntimeException: > java.lang.RuntimeException: java.io.EOFException > 2019-10-11 14:36:41,332 ERROR [main] > org.apache.hadoop.mapreduce.v2.app.MRAppMaster: Error starting MRAppMaster > org.apache.hadoop.yarn.exceptions.YarnRuntimeException: > java.lang.RuntimeException: java.io.EOFException > at > org.apache.hadoop.mapreduce.v2.app.MRAppMaster$2.call(MRAppMaster.java:531) > at > org.apache.hadoop.mapreduce.v2.app.MRAppMaster$2.call(MRAppMaster.java:511) > at > org.apache.hadoop.mapreduce.v2.app.MRAppMaster.callWithJobClassLoader(MRAppMaster.java:1614) > at > org.apache.hadoop.mapreduce.v2.app.MRAppMaster.createOutputCommitter(MRAppMaster.java:511) > at > org.apache.hadoop.mapreduce.v2.app.MRAppMaster.serviceInit(MRAppMaster.java:301) > at > org.apache.hadoop.service.AbstractService.init(AbstractService.java:163) > at > org.apache.hadoop.mapreduce.v2.app.MRAppMaster$5.run(MRAppMaster.java:1572) > at java.security.AccessController.doPrivileged(Native Method) > at javax.security.auth.Subject.doAs(Subject.java:422) > at > org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1917) > at > org.apache.hadoop.mapreduce.v2.app.MRAppMaster.initAndStartAppMaster(MRAppMaster.java:1569) > at > org.apache.hadoop.mapreduce.v2.app.MRAppMaster.main(MRAppMaster.java:1502) > Caused by: java.lang.RuntimeException: java.io.EOFException > at > org.apache.crunch.io.FormatBundle.fromSerialized(FormatBundle.java:97) > at > org.apache.crunch.io.CrunchOutputs.getNamedOutputs(CrunchOutputs.java:127) > at > org.apache.crunch.io.CrunchOutputs.getOutputCommitter(CrunchOutputs.java:87) > at > org.apache.crunch.impl.mr.run.CrunchOutputFormat.getOutputCommitter(CrunchOutputFormat.java:52) > at > org.apache.hadoop.mapreduce.v2.app.MRAppMaster$2.call(MRAppMaster.java:529) > ... 11 more > Caused by: java.io.EOFException > at java.io.DataInputStream.readBoolean(DataInputStream.java:244) > at org.apache.crunch.io.FormatBundle.readFields(FormatBundle.java:292) > at > org.apache.crunch.io.FormatBundle.fromSerialized(FormatBundle.java:94) > ... 15 more > {noformat} > FormatBundle#fromSerialized should have handled the end of stream possibility > when attempting to read the new boolean attribute introduced into the > serialization. -- This message was sent by Atlassian Jira (v8.3.4#803005)