Nicholas Marion created MCOMPILER-473: -----------------------------------------
Summary: ArrayIndexOutOfBoundsException when building Spark 3.x on zOS Key: MCOMPILER-473 URL: https://issues.apache.org/jira/browse/MCOMPILER-473 Project: Maven Compiler Plugin Issue Type: Bug Affects Versions: 3.8.1 Reporter: Nicholas Marion When building Spark on zOS, we're randomly getting the following error: {noformat} [[1;34mINFO[m] Compiling 491 Scala sources and 45 Java sources to /u/sprkbld/workspace/IzODA_zSpark_ZSPARK-303_port-3.2/sql/core/target/scala-2.12/test-classes ... java.lang.ArrayIndexOutOfBoundsException at sun.nio.fs.UnixPath.initOffsets(UnixPath.java:255) at sun.nio.fs.UnixPath.getParent(UnixPath.java:314) at sun.nio.fs.UnixPath.getParent(UnixPath.java:55) at scala.tools.nsc.backend.jvm.ClassfileWriters$DirEntryWriter.ensureDirForPath(ClassfileWriters.scala:237) at scala.tools.nsc.backend.jvm.ClassfileWriters$DirEntryWriter.writeFile(ClassfileWriters.scala:266) at scala.tools.nsc.backend.jvm.ClassfileWriters$ClassfileWriter$SingleClassWriter.writeClass(ClassfileWriters.scala:119) at scala.tools.nsc.backend.jvm.PostProcessor.sendToDisk(PostProcessor.scala:86) at scala.tools.nsc.backend.jvm.GeneratedClassHandler$WritingClassHandler.$anonfun$postProcessUnit$3(GeneratedClassHandler.scala:125) at scala.tools.nsc.backend.jvm.GeneratedClassHandler$WritingClassHandler.$anonfun$postProcessUnit$2(GeneratedClassHandler.scala:125) at scala.tools.nsc.backend.jvm.GeneratedClassHandler$WritingClassHandler$$Lambda$26107.000000007B4C2770.apply$mcV$sp(Unknown Source) at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:23) at scala.tools.nsc.backend.jvm.PostProcessorFrontendAccess$PostProcessorFrontendAccessImpl.withThreadLocalReporter(PostProcessorFrontendAccess.scala:232) at scala.tools.nsc.backend.jvm.GeneratedClassHandler$WritingClassHandler.$anonfun$postProcessUnit$1(GeneratedClassHandler.scala:124) at scala.tools.nsc.backend.jvm.GeneratedClassHandler$WritingClassHandler$$Lambda$26103.000000007B4C0B50.apply$mcV$sp(Unknown Source) at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:23) at scala.concurrent.Future$.$anonfun$apply$1(Future.scala:659) at scala.tools.nsc.backend.jvm.GeneratedClassHandler$WritingClassHandler$$Lambda$26104.000000007B4C1210.apply(Unknown Source) at scala.util.Success.$anonfun$map$1(Try.scala:255) at scala.util.Success.map(Try.scala:213) at scala.concurrent.Future.$anonfun$map$1(Future.scala:292) at scala.concurrent.Future$$Lambda$26105.000000007B458350.apply(Unknown Source) at scala.concurrent.impl.Promise.liftedTree1$1(Promise.scala:33) at scala.concurrent.impl.Promise.$anonfun$transform$1(Promise.scala:33) at scala.concurrent.impl.Promise$$Lambda$26106.000000007B4C1830.apply(Unknown Source) at scala.concurrent.impl.CallbackRunnable.run(Promise.scala:64) at scala.tools.nsc.backend.jvm.GeneratedClassHandler$SyncWritingClassHandler$$anonfun$$lessinit$greater$1.execute(GeneratedClassHandler.scala:179) at scala.concurrent.impl.ExecutionContextImpl.execute(ExecutionContextImpl.scala:24) at scala.concurrent.impl.CallbackRunnable.executeWithValue(Promise.scala:72) at scala.concurrent.impl.Promise$KeptPromise$Kept.onComplete(Promise.scala:372) at scala.concurrent.impl.Promise$KeptPromise$Kept.onComplete$(Promise.scala:371) at scala.concurrent.impl.Promise$KeptPromise$Successful.onComplete(Promise.scala:379) at scala.concurrent.impl.Promise.transform(Promise.scala:33) at scala.concurrent.impl.Promise.transform$(Promise.scala:31) at scala.concurrent.impl.Promise$KeptPromise$Successful.transform(Promise.scala:379) at scala.concurrent.Future.map(Future.scala:292) at scala.concurrent.Future.map$(Future.scala:292) at scala.concurrent.impl.Promise$KeptPromise$Successful.map(Promise.scala:379) at scala.tools.nsc.backend.jvm.GeneratedClassHandler$WritingClassHandler.postProcessUnit(GeneratedClassHandler.scala:120) at scala.tools.nsc.backend.jvm.GeneratedClassHandler$WritingClassHandler.process(GeneratedClassHandler.scala:113) at scala.tools.nsc.backend.jvm.CodeGen.genUnit(CodeGen.scala:73) at scala.tools.nsc.backend.jvm.GenBCode$BCodePhase.apply(GenBCode.scala:74) at scala.tools.nsc.Global$GlobalPhase.applyPhase(Global.scala:453) at scala.tools.nsc.Global$GlobalPhase.run(Global.scala:400) at scala.tools.nsc.backend.jvm.GenBCode$BCodePhase.super$run(GenBCode.scala:80) at scala.tools.nsc.backend.jvm.GenBCode$BCodePhase.$anonfun$run$1(GenBCode.scala:80) at scala.tools.nsc.backend.jvm.GenBCode$BCodePhase.run(GenBCode.scala:78) at scala.tools.nsc.Global$Run.compileUnitsInternal(Global.scala:1514) at scala.tools.nsc.Global$Run.compileUnits(Global.scala:1498) at scala.tools.nsc.Global$Run.compileSources(Global.scala:1491) at scala.tools.nsc.Global$Run.compile(Global.scala:1620) at xsbt.CachedCompiler0.run(CompilerInterface.scala:153) at xsbt.CachedCompiler0.run(CompilerInterface.scala:125) at xsbt.CompilerInterface.run(CompilerInterface.scala:39) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:90) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55) at java.lang.reflect.Method.invoke(Method.java:508) at sbt.internal.inc.AnalyzingCompiler.call(AnalyzingCompiler.scala:248) at sbt.internal.inc.AnalyzingCompiler.compile(AnalyzingCompiler.scala:122) at sbt.internal.inc.AnalyzingCompiler.compile(AnalyzingCompiler.scala:95) at sbt.internal.inc.MixedAnalyzingCompiler.$anonfun$compile$4(MixedAnalyzingCompiler.scala:91) at sbt.internal.inc.MixedAnalyzingCompiler$$Lambda$240.000000002AD5DA70.apply$mcV$sp(Unknown Source) at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:23) at sbt.internal.inc.MixedAnalyzingCompiler.timed(MixedAnalyzingCompiler.scala:186) at sbt.internal.inc.MixedAnalyzingCompiler.$anonfun$compile$3(MixedAnalyzingCompiler.scala:82) at sbt.internal.inc.MixedAnalyzingCompiler.$anonfun$compile$3$adapted(MixedAnalyzingCompiler.scala:77) at sbt.internal.inc.MixedAnalyzingCompiler$$Lambda$232.000000002AD59410.apply(Unknown Source) at sbt.internal.inc.JarUtils$.withPreviousJar(JarUtils.scala:215) at sbt.internal.inc.MixedAnalyzingCompiler.compileScala$1(MixedAnalyzingCompiler.scala:77) at sbt.internal.inc.MixedAnalyzingCompiler.compile(MixedAnalyzingCompiler.scala:146) at sbt.internal.inc.IncrementalCompilerImpl.$anonfun$compileInternal$1(IncrementalCompilerImpl.scala:343) at sbt.internal.inc.IncrementalCompilerImpl.$anonfun$compileInternal$1$adapted(IncrementalCompilerImpl.scala:343) at sbt.internal.inc.IncrementalCompilerImpl$$Lambda$172.000000002AB78DB0.apply(Unknown Source) at sbt.internal.inc.Incremental$.doCompile(Incremental.scala:120) at sbt.internal.inc.Incremental$.$anonfun$compile$4(Incremental.scala:100) at sbt.internal.inc.Incremental$$$Lambda$215.000000002AD11F70.apply(Unknown Source) at sbt.internal.inc.IncrementalCommon.recompileClasses(IncrementalCommon.scala:180) at sbt.internal.inc.IncrementalCommon.cycle(IncrementalCommon.scala:98) at sbt.internal.inc.Incremental$.$anonfun$compile$3(Incremental.scala:102) at sbt.internal.inc.Incremental$$$Lambda$213.000000002AD0F2B0.apply(Unknown Source) at sbt.internal.inc.Incremental$.manageClassfiles(Incremental.scala:155) at sbt.internal.inc.Incremental$.compile(Incremental.scala:92) at sbt.internal.inc.IncrementalCompile$.apply(Compile.scala:75) at sbt.internal.inc.IncrementalCompilerImpl.compileInternal(IncrementalCompilerImpl.scala:348) at sbt.internal.inc.IncrementalCompilerImpl.$anonfun$compileIncrementally$1(IncrementalCompilerImpl.scala:301) at sbt.internal.inc.IncrementalCompilerImpl$$Lambda$45.0000000027BE4D30.apply(Unknown Source) at sbt.internal.inc.IncrementalCompilerImpl.handleCompilationError(IncrementalCompilerImpl.scala:168) at sbt.internal.inc.IncrementalCompilerImpl.compileIncrementally(IncrementalCompilerImpl.scala:248) at sbt.internal.inc.IncrementalCompilerImpl.compile(IncrementalCompilerImpl.scala:74) at sbt_inc.SbtIncrementalCompiler.compile(SbtIncrementalCompiler.java:173) at scala_maven.ScalaCompilerSupport.incrementalCompile(ScalaCompilerSupport.java:297) at scala_maven.ScalaCompilerSupport.compile(ScalaCompilerSupport.java:109) at scala_maven.ScalaCompilerSupport.doExecute(ScalaCompilerSupport.java:91) at scala_maven.ScalaMojoSupport.execute(ScalaMojoSupport.java:554) at scala_maven.ScalaTestCompileMojo.execute(ScalaTestCompileMojo.java:49) at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:137) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:210) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:156) at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:148) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:117) at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:81) at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:56) at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128) at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:305) at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:192) at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:105) at org.apache.maven.cli.MavenCli.execute(MavenCli.java:972) at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:293) at org.apache.maven.cli.MavenCli.main(MavenCli.java:196) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:90) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55) at java.lang.reflect.Method.invoke(Method.java:508) at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:282) at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:225) at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:406) at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:347){noformat} This happens randomly throughout the build process. It may happen immediately or after 30 or so minutes. Only occurs on Spark 3.x builds. (I can kick off one build and it fails, kick if off again and it passes. Without any changes.) Spark 2.4 uses 3.7.0 and never hits this issue. -- This message was sent by Atlassian Jira (v8.3.4#803005)