[ 
https://issues.apache.org/jira/browse/SPARK-5559?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14303304#comment-14303304
 ] 

Apache Spark commented on SPARK-5559:
-------------------------------------

User 'sarutak' has created a pull request for this issue:
https://github.com/apache/spark/pull/4337

> Remove oppotunity we met flakiness when running FlumeStreamSuite
> ----------------------------------------------------------------
>
>                 Key: SPARK-5559
>                 URL: https://issues.apache.org/jira/browse/SPARK-5559
>             Project: Spark
>          Issue Type: Improvement
>          Components: Project Infra, Streaming
>    Affects Versions: 1.3.0
>            Reporter: Kousuke Saruta
>
> When we run FlumeStreamSuite on Jenkins, sometimes we get error like as 
> follows.
> {code}
> sbt.ForkMain$ForkError: The code passed to eventually never returned 
> normally. Attempted 52 times over 10.094849836 seconds. Last failure message: 
> Error connecting to localhost/127.0.0.1:23456.
>       at 
> org.scalatest.concurrent.Eventually$class.tryTryAgain$1(Eventually.scala:420)
>       at 
> org.scalatest.concurrent.Eventually$class.eventually(Eventually.scala:438)
>       at org.scalatest.concurrent.Eventually$.eventually(Eventually.scala:478)
>       at 
> org.scalatest.concurrent.Eventually$class.eventually(Eventually.scala:307)
>       at org.scalatest.concurrent.Eventually$.eventually(Eventually.scala:478)
>       at 
> org.apache.spark.streaming.flume.FlumeStreamSuite.writeAndVerify(FlumeStreamSuite.scala:116)
>       at 
> org.apache.spark.streaming.flume.FlumeStreamSuite.org$apache$spark$streaming$flume$FlumeStreamSuite$$testFlumeStream(FlumeStreamSuite.scala:74)
>       at 
> org.apache.spark.streaming.flume.FlumeStreamSuite$$anonfun$3.apply$mcV$sp(FlumeStreamSuite.scala:66)
>       at 
> org.apache.spark.streaming.flume.FlumeStreamSuite$$anonfun$3.apply(FlumeStreamSuite.scala:66)
>       at 
> org.apache.spark.streaming.flume.FlumeStreamSuite$$anonfun$3.apply(FlumeStreamSuite.scala:66)
>       at 
> org.scalatest.Transformer$$anonfun$apply$1.apply$mcV$sp(Transformer.scala:22)
>       at org.scalatest.OutcomeOf$class.outcomeOf(OutcomeOf.scala:85)
>       at org.scalatest.OutcomeOf$.outcomeOf(OutcomeOf.scala:104)
>       at org.scalatest.Transformer.apply(Transformer.scala:22)
>       at org.scalatest.Transformer.apply(Transformer.scala:20)
>       at org.scalatest.FunSuiteLike$$anon$1.apply(FunSuiteLike.scala:166)
>       at org.scalatest.Suite$class.withFixture(Suite.scala:1122)
>       at org.scalatest.FunSuite.withFixture(FunSuite.scala:1555)
>       at 
> org.scalatest.FunSuiteLike$class.invokeWithFixture$1(FunSuiteLike.scala:163)
>       at 
> org.scalatest.FunSuiteLike$$anonfun$runTest$1.apply(FunSuiteLike.scala:175)
>       at 
> org.scalatest.FunSuiteLike$$anonfun$runTest$1.apply(FunSuiteLike.scala:175)
>       at org.scalatest.SuperEngine.runTestImpl(Engine.scala:306)
>       at org.scalatest.FunSuiteLike$class.runTest(FunSuiteLike.scala:175)
> {code}
> This error is caused by check-then-act logic  when it find free-port .
> {code}
>   /** Find a free port */
>   private def findFreePort(): Int = {
>     Utils.startServiceOnPort(23456, (trialPort: Int) => {
>       val socket = new ServerSocket(trialPort)
>       socket.close()
>       (null, trialPort)
>     }, conf)._2
>   }
> {code}
> Removing the check-then-act is not easy but we can reduce the chance of 
> having the error by choosing random value for initial port instead of 23456.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscr...@spark.apache.org
For additional commands, e-mail: issues-h...@spark.apache.org

Reply via email to