You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@spark.apache.org by "Derek Dagit (JIRA)" <ji...@apache.org> on 2017/03/31 21:48:41 UTC

[jira] [Commented] (SPARK-20181) Avoid noisy Jetty WARN log when failing to bind a port

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

Derek Dagit commented on SPARK-20181:
-------------------------------------

Working on this...

> Avoid noisy Jetty WARN log when failing to bind a port
> ------------------------------------------------------
>
>                 Key: SPARK-20181
>                 URL: https://issues.apache.org/jira/browse/SPARK-20181
>             Project: Spark
>          Issue Type: Improvement
>          Components: Spark Core
>    Affects Versions: 2.1.0
>            Reporter: Derek Dagit
>            Priority: Minor
>
> As a user, I would like to suppress the Jetty WARN log about failing to bind to a port already in use, so that my logs are less noisy.
> Currently, Jetty code prints the stack trace of the BindException at WARN level. In the context of starting a service on an ephemeral port, this is not a useful warning, and it is exceedingly verbose.
> {noformat}
> 17/03/06 14:57:26 WARN AbstractLifeCycle: FAILED ServerConnector@79476a4e{HTTP/1.1}{0.0.0.0:4040}: java.net.BindException: Address already in use
> java.net.BindException: Address already in use
> 	at sun.nio.ch.Net.bind0(Native Method)
> 	at sun.nio.ch.Net.bind(Net.java:433)
> 	at sun.nio.ch.Net.bind(Net.java:425)
> 	at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:223)
> 	at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:74)
> 	at org.spark_project.jetty.server.ServerConnector.open(ServerConnector.java:321)
> 	at org.spark_project.jetty.server.AbstractNetworkConnector.doStart(AbstractNetworkConnector.java:80)
> 	at org.spark_project.jetty.server.ServerConnector.doStart(ServerConnector.java:236)
> 	at org.spark_project.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
> 	at org.spark_project.jetty.server.Server.doStart(Server.java:366)
> 	at org.spark_project.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)
> 	at org.apache.spark.ui.JettyUtils$.org$apache$spark$ui$JettyUtils$$connect$1(JettyUtils.scala:306)
> 	at org.apache.spark.ui.JettyUtils$$anonfun$5.apply(JettyUtils.scala:316)
> 	at org.apache.spark.ui.JettyUtils$$anonfun$5.apply(JettyUtils.scala:316)
> 	at org.apache.spark.util.Utils$$anonfun$startServiceOnPort$1.apply$mcVI$sp(Utils.scala:2175)
> 	at scala.collection.immutable.Range.foreach$mVc$sp(Range.scala:160)
> 	at org.apache.spark.util.Utils$.startServiceOnPort(Utils.scala:2166)
> 	at org.apache.spark.ui.JettyUtils$.startJettyServer(JettyUtils.scala:316)
> 	at org.apache.spark.ui.WebUI.bind(WebUI.scala:139)
> 	at org.apache.spark.SparkContext$$anonfun$10.apply(SparkContext.scala:448)
> 	at org.apache.spark.SparkContext$$anonfun$10.apply(SparkContext.scala:448)
> 	at scala.Option.foreach(Option.scala:257)
> 	at org.apache.spark.SparkContext.<init>(SparkContext.scala:448)
> 	at org.apache.spark.SparkContext$.getOrCreate(SparkContext.scala:2282)
> 	at org.apache.spark.sql.SparkSession$Builder$$anonfun$8.apply(SparkSession.scala:831)
> 	at org.apache.spark.sql.SparkSession$Builder$$anonfun$8.apply(SparkSession.scala:823)
> 	at scala.Option.getOrElse(Option.scala:121)
> 	at org.apache.spark.sql.SparkSession$Builder.getOrCreate(SparkSession.scala:823)
> 	at org.apache.spark.repl.Main$.createSparkSession(Main.scala:95)
> 	at $line3.$read$$iw$$iw.<init>(<console>:15)
> 	at $line3.$read$$iw.<init>(<console>:31)
> 	at $line3.$read.<init>(<console>:33)
> 	at $line3.$read$.<init>(<console>:37)
> 	at $line3.$read$.<clinit>(<console>)
> 	at $line3.$eval$.$print$lzycompute(<console>:7)
> 	at $line3.$eval$.$print(<console>:6)
> 	at $line3.$eval.$print(<console>)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at java.lang.reflect.Method.invoke(Method.java:498)
> 	at scala.tools.nsc.interpreter.IMain$ReadEvalPrint.call(IMain.scala:786)
> 	at scala.tools.nsc.interpreter.IMain$Request.loadAndRun(IMain.scala:1047)
> 	at scala.tools.nsc.interpreter.IMain$WrappedRequest$$anonfun$loadAndRunReq$1.apply(IMain.scala:638)
> 	at scala.tools.nsc.interpreter.IMain$WrappedRequest$$anonfun$loadAndRunReq$1.apply(IMain.scala:637)
> 	at scala.reflect.internal.util.ScalaClassLoader$class.asContext(ScalaClassLoader.scala:31)
> 	at scala.reflect.internal.util.AbstractFileClassLoader.asContext(AbstractFileClassLoader.scala:19)
> 	at scala.tools.nsc.interpreter.IMain$WrappedRequest.loadAndRunReq(IMain.scala:637)
> 	at scala.tools.nsc.interpreter.IMain.interpret(IMain.scala:569)
> 	at scala.tools.nsc.interpreter.IMain.interpret(IMain.scala:565)
> 	at scala.tools.nsc.interpreter.ILoop.interpretStartingWith(ILoop.scala:807)
> 	at scala.tools.nsc.interpreter.ILoop.command(ILoop.scala:681)
> 	at scala.tools.nsc.interpreter.ILoop.processLine(ILoop.scala:395)
> 	at org.apache.spark.repl.SparkILoop$$anonfun$initializeSpark$1.apply$mcV$sp(SparkILoop.scala:38)
> 	at org.apache.spark.repl.SparkILoop$$anonfun$initializeSpark$1.apply(SparkILoop.scala:37)
> 	at org.apache.spark.repl.SparkILoop$$anonfun$initializeSpark$1.apply(SparkILoop.scala:37)
> 	at scala.tools.nsc.interpreter.IMain.beQuietDuring(IMain.scala:214)
> 	at org.apache.spark.repl.SparkILoop.initializeSpark(SparkILoop.scala:37)
> 	at org.apache.spark.repl.SparkILoop.loadFiles(SparkILoop.scala:94)
> 	at scala.tools.nsc.interpreter.ILoop$$anonfun$process$1.apply$mcZ$sp(ILoop.scala:920)
> 	at scala.tools.nsc.interpreter.ILoop$$anonfun$process$1.apply(ILoop.scala:909)
> 	at scala.tools.nsc.interpreter.ILoop$$anonfun$process$1.apply(ILoop.scala:909)
> 	at scala.reflect.internal.util.ScalaClassLoader$.savingContextLoader(ScalaClassLoader.scala:97)
> 	at scala.tools.nsc.interpreter.ILoop.process(ILoop.scala:909)
> 	at org.apache.spark.repl.Main$.doMain(Main.scala:68)
> 	at org.apache.spark.repl.Main$.main(Main.scala:51)
> 	at org.apache.spark.repl.Main.main(Main.scala)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at java.lang.reflect.Method.invoke(Method.java:498)
> 	at org.apache.spark.deploy.SparkSubmit$.org$apache$spark$deploy$SparkSubmit$$runMain(SparkSubmit.scala:736)
> 	at org.apache.spark.deploy.SparkSubmit$.doRunMain$1(SparkSubmit.scala:185)
> 	at org.apache.spark.deploy.SparkSubmit$.submit(SparkSubmit.scala:210)
> 	at org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:124)
> 	at org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala)
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

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