Details
Description
Sometimes we have UT failures with the following stacktrace:
sbt.ForkMain$ForkError: org.scalatest.exceptions.TestFailedDueToTimeoutException: The code passed to eventually never returned normally. Attempted 15 times over 10.013962218000001 seconds. Last failure message: There are 1 possibly leaked file streams.. at org.scalatest.concurrent.Eventually$class.tryTryAgain$1(Eventually.scala:421) at org.scalatest.concurrent.Eventually$class.eventually(Eventually.scala:439) at org.apache.spark.sql.execution.datasources.orc.OrcTest.eventually(OrcTest.scala:45) at org.scalatest.concurrent.Eventually$class.eventually(Eventually.scala:308) at org.apache.spark.sql.execution.datasources.orc.OrcTest.eventually(OrcTest.scala:45) at org.apache.spark.sql.test.SharedSparkSession$class.afterEach(SharedSparkSession.scala:114) at org.apache.spark.sql.execution.datasources.orc.OrcQuerySuite.afterEach(OrcQuerySuite.scala:583) at org.scalatest.BeforeAndAfterEach$$anonfun$1.apply$mcV$sp(BeforeAndAfterEach.scala:234) at org.scalatest.Status$$anonfun$withAfterEffect$1.apply(Status.scala:379) at org.scalatest.Status$$anonfun$withAfterEffect$1.apply(Status.scala:375) at org.scalatest.SucceededStatus$.whenCompleted(Status.scala:454) at org.scalatest.Status$class.withAfterEffect(Status.scala:375) at org.scalatest.SucceededStatus$.withAfterEffect(Status.scala:426) at org.scalatest.BeforeAndAfterEach$class.runTest(BeforeAndAfterEach.scala:232) at org.apache.spark.sql.execution.datasources.orc.OrcQuerySuite.runTest(OrcQuerySuite.scala:583) at org.scalatest.FunSuiteLike$$anonfun$runTests$1.apply(FunSuiteLike.scala:229) at org.scalatest.FunSuiteLike$$anonfun$runTests$1.apply(FunSuiteLike.scala:229) at org.scalatest.SuperEngine$$anonfun$traverseSubNodes$1$1.apply(Engine.scala:396) at org.scalatest.SuperEngine$$anonfun$traverseSubNodes$1$1.apply(Engine.scala:384) at scala.collection.immutable.List.foreach(List.scala:381) at org.scalatest.SuperEngine.traverseSubNodes$1(Engine.scala:384) at org.scalatest.SuperEngine.org$scalatest$SuperEngine$$runTestsInBranch(Engine.scala:379) at org.scalatest.SuperEngine.runTestsImpl(Engine.scala:461) at org.scalatest.FunSuiteLike$class.runTests(FunSuiteLike.scala:229) at org.scalatest.FunSuite.runTests(FunSuite.scala:1560) at org.scalatest.Suite$class.run(Suite.scala:1147) at org.scalatest.FunSuite.org$scalatest$FunSuiteLike$$super$run(FunSuite.scala:1560) at org.scalatest.FunSuiteLike$$anonfun$run$1.apply(FunSuiteLike.scala:233) at org.scalatest.FunSuiteLike$$anonfun$run$1.apply(FunSuiteLike.scala:233) at org.scalatest.SuperEngine.runImpl(Engine.scala:521) at org.scalatest.FunSuiteLike$class.run(FunSuiteLike.scala:233) at org.apache.spark.SparkFunSuite.org$scalatest$BeforeAndAfterAll$$super$run(SparkFunSuite.scala:52) at org.scalatest.BeforeAndAfterAll$class.liftedTree1$1(BeforeAndAfterAll.scala:213) at org.scalatest.BeforeAndAfterAll$class.run(BeforeAndAfterAll.scala:210) at org.apache.spark.SparkFunSuite.run(SparkFunSuite.scala:52) at org.scalatest.tools.Framework.org$scalatest$tools$Framework$$runSuite(Framework.scala:314) at org.scalatest.tools.Framework$ScalaTestTask.execute(Framework.scala:480) at sbt.ForkMain$Run$2.call(ForkMain.java:296) at sbt.ForkMain$Run$2.call(ForkMain.java:286) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745) Caused by: sbt.ForkMain$ForkError: java.lang.IllegalStateException: There are 1 possibly leaked file streams. at org.apache.spark.DebugFilesystem$.assertNoOpenStreams(DebugFilesystem.scala:54) at org.apache.spark.sql.test.SharedSparkSession$$anonfun$afterEach$1.apply$mcV$sp(SharedSparkSession.scala:115) at org.apache.spark.sql.test.SharedSparkSession$$anonfun$afterEach$1.apply(SharedSparkSession.scala:115) at org.apache.spark.sql.test.SharedSparkSession$$anonfun$afterEach$1.apply(SharedSparkSession.scala:115) at org.scalatest.concurrent.Eventually$class.makeAValiantAttempt$1(Eventually.scala:395) at org.scalatest.concurrent.Eventually$class.tryTryAgain$1(Eventually.scala:409) ... 42 more Caused by: sbt.ForkMain$ForkError: java.lang.Throwable: null at org.apache.spark.DebugFilesystem$.addOpenStream(DebugFilesystem.scala:36) at org.apache.spark.DebugFilesystem.open(DebugFilesystem.scala:70) at org.apache.hadoop.fs.FileSystem.open(FileSystem.java:766) at org.apache.orc.impl.RecordReaderUtils$DefaultDataReader.open(RecordReaderUtils.java:173) at org.apache.orc.impl.RecordReaderImpl.<init>(RecordReaderImpl.java:254) at org.apache.orc.impl.ReaderImpl.rows(ReaderImpl.java:633) at org.apache.spark.sql.execution.datasources.orc.OrcColumnarBatchReader.initialize(OrcColumnarBatchReader.java:140) at org.apache.spark.sql.execution.datasources.orc.OrcFileFormat$$anonfun$buildReaderWithPartitionValues$2.apply(OrcFileFormat.scala:197) at org.apache.spark.sql.execution.datasources.orc.OrcFileFormat$$anonfun$buildReaderWithPartitionValues$2.apply(OrcFileFormat.scala:161) at org.apache.spark.sql.execution.datasources.FileScanRDD$$anon$1.org$apache$spark$sql$execution$datasources$FileScanRDD$$anon$$readCurrentFile(FileScanRDD.scala:125) at org.apache.spark.sql.execution.datasources.FileScanRDD$$anon$1.nextIterator(FileScanRDD.scala:179) at org.apache.spark.sql.execution.datasources.FileScanRDD$$anon$1.hasNext(FileScanRDD.scala:106) at org.apache.spark.sql.catalyst.expressions.GeneratedClass$GeneratedIteratorForCodegenStage1.scan_nextBatch$(Unknown Source) at org.apache.spark.sql.catalyst.expressions.GeneratedClass$GeneratedIteratorForCodegenStage1.processNext(Unknown Source) at org.apache.spark.sql.execution.BufferedRowIterator.hasNext(BufferedRowIterator.java:43) at org.apache.spark.sql.execution.WholeStageCodegenExec$$anonfun$10$$anon$1.hasNext(WholeStageCodegenExec.scala:614) at scala.collection.Iterator$$anon$11.hasNext(Iterator.scala:408) at scala.collection.Iterator$$anon$11.hasNext(Iterator.scala:408) at org.apache.spark.util.Utils$.getIteratorSize(Utils.scala:1834) at org.apache.spark.rdd.RDD$$anonfun$count$1.apply(RDD.scala:1162) at org.apache.spark.rdd.RDD$$anonfun$count$1.apply(RDD.scala:1162) at org.apache.spark.SparkContext$$anonfun$runJob$5.apply(SparkContext.scala:2063) at org.apache.spark.SparkContext$$anonfun$runJob$5.apply(SparkContext.scala:2063) at org.apache.spark.scheduler.ResultTask.runTask(ResultTask.scala:87) at org.apache.spark.scheduler.Task.run(Task.scala:109) at org.apache.spark.executor.Executor$TaskRunner.run(Executor.scala:345) ... 3 more
Attachments
Issue Links
- blocks
-
SPARK-24139 Fix Flaky Tests
- Resolved
- is duplicated by
-
SPARK-24138 Flaky test: org.apache.spark.sql.execution.datasources.orc.OrcQuerySuite
- Resolved
- is related to
-
SPARK-23390 Flaky test: FileBasedDataSourceSuite
- Resolved
-
SPARK-23505 Flaky test: ParquetQuerySuite
- Resolved
- relates to
-
SPARK-26427 Upgrade Apache ORC to 1.5.4
- Resolved