Alexander Bouriakov created SPARK-27795:
-------------------------------------------

             Summary: Spark Web UI is broken when running in local mode within 
WildFly application server
                 Key: SPARK-27795
                 URL: https://issues.apache.org/jira/browse/SPARK-27795
             Project: Spark
          Issue Type: Bug
          Components: Web UI
    Affects Versions: 2.4.3
         Environment: Steps to reproduce:

In a Servlet, instantiate a local spark session

SparkConf conf = {color:#000080}new 
{color}SparkConf().setMaster({color:#008000}"local[*]"{color}).setAppName({color:#008000}"My
 App"{color});
SparkSession orCreate = SparkSession.builder().config(conf).getOrCreate();

Try accessing the Spark Web UI (port 4040) -> UI is broken, only some basic 
text is see, JavaScript is not working.
            Reporter: Alexander Bouriakov


Static files of the Web UI from 
*spark-core_2.12-2.4.3.jar/org/apache/spark/ui/static* with filesize smaller 
than the OutputBufferSize of the jetty Server (which ist 32k by default) return 
HTTP 500 because Jetty tries to load them by the path contained in their 
WildFly vfs:// URL which points to a JAR and therefore can not be read by 
RandomAccessFile. 

For bigger files (like bootstrap.min.css), the file is read differently 
(probably by using Resource.openStream()) which works.

I know that Jetty is produced by Eclipse but post it here since it is 
integrated into Spark. Feel free to forward it to Eclipse issue tracking.

Example:

Problem accessing /static/spark-logo-77x50px-hd.png. Reason:

Server Error
h2. HTTP ERROR 500

Problem accessing /static/spark-logo-77x50px-hd.png. Reason:

Server Error

 
h3. Caused by:

java.lang.RuntimeException: java.io.FileNotFoundException: 
/content/restws-war-4.0.100-SNAPSHOT.war/WEB-INF/lib/spark-core_2.12-2.4.3.jar/org/apache/spark/ui/static/spark-logo-77x50px-hd.png
 (Datei oder Verzeichnis nicht gefunden) at 
org.spark_project.jetty.http.ResourceHttpContent.getDirectBuffer(ResourceHttpContent.java:136)
 at org.spark_project.jetty.server.HttpOutput.sendContent(HttpOutput.java:823) 
at 
org.spark_project.jetty.servlet.DefaultServlet.sendData(DefaultServlet.java:948)
 at 
org.spark_project.jetty.servlet.DefaultServlet.doGet(DefaultServlet.java:532) 
at javax.servlet.http.HttpServlet.service(HttpServlet.java:686) at 
javax.servlet.http.HttpServlet.service(HttpServlet.java:791) at 
org.spark_project.jetty.servlet.ServletHolder.handle(ServletHolder.java:848) at 
org.spark_project.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:584)
 at 
org.spark_project.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1180)
 at 
org.spark_project.jetty.servlet.ServletHandler.doScope(ServletHandler.java:512) 
at 
org.spark_project.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1112)
 at 
org.spark_project.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
 at 
org.spark_project.jetty.server.handler.gzip.GzipHandler.handle(GzipHandler.java:404)
 at 
org.spark_project.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:187)
 at 
org.spark_project.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:134)
 at org.spark_project.jetty.server.Server.handleAsync(Server.java:584) at 
org.spark_project.jetty.server.HttpChannel.handle(HttpChannel.java:423) at 
org.spark_project.jetty.server.HttpConnection.onFillable(HttpConnection.java:251)
 at 
org.spark_project.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:283)
 at org.spark_project.jetty.io.FillInterest.fillable(FillInterest.java:108) at 
org.spark_project.jetty.io.SelectChannelEndPoint$2.run(SelectChannelEndPoint.java:93)
 at 
org.spark_project.jetty.util.thread.strategy.ExecuteProduceConsume.executeProduceConsume(ExecuteProduceConsume.java:303)
 at 
org.spark_project.jetty.util.thread.strategy.ExecuteProduceConsume.produceConsume(ExecuteProduceConsume.java:148)
 at 
org.spark_project.jetty.util.thread.strategy.ExecuteProduceConsume.run(ExecuteProduceConsume.java:136)
 at 
org.spark_project.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:671)
 at 
org.spark_project.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:589)
 at java.lang.Thread.run(Thread.java:745) Caused by: 
java.io.FileNotFoundException: 
/content/restws-war-4.0.100-SNAPSHOT.war/WEB-INF/lib/spark-core_2.12-2.4.3.jar/org/apache/spark/ui/static/spark-logo-77x50px-hd.png
 (Datei oder Verzeichnis nicht gefunden) at 
java.io.RandomAccessFile.open0(Native Method) at 
java.io.RandomAccessFile.open(RandomAccessFile.java:316) at 
java.io.RandomAccessFile.<init>(RandomAccessFile.java:243) at 
org.spark_project.jetty.util.BufferUtil.readFrom(BufferUtil.java:449) at 
org.spark_project.jetty.util.BufferUtil.toBuffer(BufferUtil.java:945) at 
org.spark_project.jetty.http.ResourceHttpContent.getDirectBuffer(ResourceHttpContent.java:132)
 ... 26 more
h3. Caused by:

java.io.FileNotFoundException: 
/content/restws-war-4.0.100-SNAPSHOT.war/WEB-INF/lib/spark-core_2.12-2.4.3.jar/org/apache/spark/ui/static/spark-logo-77x50px-hd.png
 (Datei oder Verzeichnis nicht gefunden) at 
java.io.RandomAccessFile.open0(Native Method) at 
java.io.RandomAccessFile.open(RandomAccessFile.java:316) at 
java.io.RandomAccessFile.<init>(RandomAccessFile.java:243) at 
org.spark_project.jetty.util.BufferUtil.readFrom(BufferUtil.java:449) at 
org.spark_project.jetty.util.BufferUtil.toBuffer(BufferUtil.java:945) at 
org.spark_project.jetty.http.ResourceHttpContent.getDirectBuffer(ResourceHttpContent.java:132)
 at org.spark_project.jetty.server.HttpOutput.sendContent(HttpOutput.java:823) 
at 
org.spark_project.jetty.servlet.DefaultServlet.sendData(DefaultServlet.java:948)
 at 
org.spark_project.jetty.servlet.DefaultServlet.doGet(DefaultServlet.java:532) 
at javax.servlet.http.HttpServlet.service(HttpServlet.java:686) at 
javax.servlet.http.HttpServlet.service(HttpServlet.java:791) at 
org.spark_project.jetty.servlet.ServletHolder.handle(ServletHolder.java:848) at 
org.spark_project.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:584)
 at 
org.spark_project.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1180)
 at 
org.spark_project.jetty.servlet.ServletHandler.doScope(ServletHandler.java:512) 
at 
org.spark_project.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1112)
 at 
org.spark_project.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
 at 
org.spark_project.jetty.server.handler.gzip.GzipHandler.handle(GzipHandler.java:404)
 at 
org.spark_project.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:187)
 at 
org.spark_project.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:134)
 at org.spark_project.jetty.server.Server.handleAsync(Server.java:584) at 
org.spark_project.jetty.server.HttpChannel.handle(HttpChannel.java:423) at 
org.spark_project.jetty.server.HttpConnection.onFillable(HttpConnection.java:251)
 at 
org.spark_project.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:283)
 at org.spark_project.jetty.io.FillInterest.fillable(FillInterest.java:108) at 
org.spark_project.jetty.io.SelectChannelEndPoint$2.run(SelectChannelEndPoint.java:93)
 at 
org.spark_project.jetty.util.thread.strategy.ExecuteProduceConsume.executeProduceConsume(ExecuteProduceConsume.java:303)
 at 
org.spark_project.jetty.util.thread.strategy.ExecuteProduceConsume.produceConsume(ExecuteProduceConsume.java:148)
 at 
org.spark_project.jetty.util.thread.strategy.ExecuteProduceConsume.run(ExecuteProduceConsume.java:136)
 at 
org.spark_project.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:671)
 at 
org.spark_project.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:589)
 at java.lang.Thread.run(Thread.java:745)
----
[Powered by Jetty:// 9.3.z-SNAPSHOT|http://eclipse.org/jetty]



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

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

Reply via email to