[jira] [Commented] (SPARK-11824) WebUI does not render descriptions with 'bad' HTML, throws console error

2015-12-05 Thread Apache Spark (JIRA)

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

Apache Spark commented on SPARK-11824:
--

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

> WebUI does not render descriptions with 'bad' HTML, throws console error
> 
>
> Key: SPARK-11824
> URL: https://issues.apache.org/jira/browse/SPARK-11824
> Project: Spark
>  Issue Type: Improvement
>  Components: SQL, Web UI
>Affects Versions: 1.5.2
> Environment: RHEL 6, Java 1.7, Mesos 0.25.0
>Reporter: Andy Robb
>Priority: Minor
>  Labels: starter
>
> When using SparkSQL CLI, running a query with less-than or greater-than 
> symbols in a query, viewing the Web UI will throw the following console 
> warning. (The table and column names have been changed from the actual query.)
> This occurs across CLI invocations. The warning is thrown each time the UI is 
> refreshed, both during query execution and after the query is complete. 
> {noformat}
> 15/11/18 10:45:31 WARN ui.UIUtils: Invalid job description: select count(1) 
> from table1 where date >= '2015-11-01' and date <= '2015-11-15' 
> org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 114; The content 
> of elements must consist of well-formed character data or markup.
>   at 
> com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:198)
>   at 
> com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:177)
>   at 
> com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:441)
>   at 
> com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:368)
>   at 
> com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1436)
>   at 
> com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.startOfMarkup(XMLDocumentFragmentScannerImpl.java:2636)
>   at 
> com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2734)
>   at 
> com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:606)
>   at 
> com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510)
>   at 
> com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:848)
>   at 
> com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:777)
>   at 
> com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141)
>   at 
> com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1213)
>   at 
> com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:648)
>   at 
> com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.parse(SAXParserImpl.java:332)
>   at scala.xml.factory.XMLLoader$class.loadXML(XMLLoader.scala:40)
>   at scala.xml.XML$.loadXML(XML.scala:57)
>   at scala.xml.factory.XMLLoader$class.loadString(XMLLoader.scala:59)
>   at scala.xml.XML$.loadString(XML.scala:57)
>   at org.apache.spark.ui.UIUtils$.makeDescription(UIUtils.scala:417)
>   at 
> org.apache.spark.ui.jobs.StageTableBase$$anonfun$5$$anonfun$apply$1.apply(StageTable.scala:118)
>   at 
> org.apache.spark.ui.jobs.StageTableBase$$anonfun$5$$anonfun$apply$1.apply(StageTable.scala:116)
>   at scala.Option.map(Option.scala:145)
>   at 
> org.apache.spark.ui.jobs.StageTableBase$$anonfun$5.apply(StageTable.scala:116)
>   at 
> org.apache.spark.ui.jobs.StageTableBase$$anonfun$5.apply(StageTable.scala:115)
>   at scala.Option.flatMap(Option.scala:170)
>   at 
> org.apache.spark.ui.jobs.StageTableBase.makeDescription(StageTable.scala:115)
>   at 
> org.apache.spark.ui.jobs.StageTableBase.stageRow(StageTable.scala:177)
>   at 
> org.apache.spark.ui.jobs.StageTableBase.org$apache$spark$ui$jobs$StageTableBase$$renderStageRow(StageTable.scala:195)
>   at 
> org.apache.spark.ui.jobs.StageTableBase$$anonfun$toNodeSeq$1.apply(StageTable.scala:60)
>   at 
> org.apache.spark.ui.jobs.StageTableBase$$anonfun$toNodeSeq$1.apply(StageTable.scala:60)
>   at 
> org.apache.spark.ui.jobs.StageTableBase$$anonfun$stageTable$1.apply(StageTable.scala:69)
>   at 
> org.apache.spark.ui.jobs.StageTableBase$$anonfun$stageTable$1.apply(StageTable.scala:69)
>   at scala.collection.immutable.Stream.map(Stream.scala:376)
>   at 
> 

[jira] [Commented] (SPARK-11824) WebUI does not render descriptions with 'bad' HTML, throws console error

2015-11-30 Thread Yongjia Wang (JIRA)

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

Yongjia Wang commented on SPARK-11824:
--

Looks this is the right escaper.
StringEscapeUtils.escapeXml
https://commons.apache.org/proper/commons-lang/javadocs/api-2.6/org/apache/commons/lang/StringEscapeUtils.html#escapeXml(java.lang.String)

> WebUI does not render descriptions with 'bad' HTML, throws console error
> 
>
> Key: SPARK-11824
> URL: https://issues.apache.org/jira/browse/SPARK-11824
> Project: Spark
>  Issue Type: Bug
>  Components: SQL, Web UI
>Affects Versions: 1.5.2
> Environment: RHEL 6, Java 1.7, Mesos 0.25.0
>Reporter: Andy Robb
>Priority: Minor
>  Labels: starter
>
> When using SparkSQL CLI, running a query with less-than or greater-than 
> symbols in a query, viewing the Web UI will throw the following console 
> warning. (The table and column names have been changed from the actual query.)
> This occurs across CLI invocations. The warning is thrown each time the UI is 
> refreshed, both during query execution and after the query is complete. 
> {noformat}
> 15/11/18 10:45:31 WARN ui.UIUtils: Invalid job description: select count(1) 
> from table1 where date >= '2015-11-01' and date <= '2015-11-15' 
> org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 114; The content 
> of elements must consist of well-formed character data or markup.
>   at 
> com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:198)
>   at 
> com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:177)
>   at 
> com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:441)
>   at 
> com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:368)
>   at 
> com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1436)
>   at 
> com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.startOfMarkup(XMLDocumentFragmentScannerImpl.java:2636)
>   at 
> com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2734)
>   at 
> com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:606)
>   at 
> com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510)
>   at 
> com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:848)
>   at 
> com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:777)
>   at 
> com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141)
>   at 
> com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1213)
>   at 
> com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:648)
>   at 
> com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.parse(SAXParserImpl.java:332)
>   at scala.xml.factory.XMLLoader$class.loadXML(XMLLoader.scala:40)
>   at scala.xml.XML$.loadXML(XML.scala:57)
>   at scala.xml.factory.XMLLoader$class.loadString(XMLLoader.scala:59)
>   at scala.xml.XML$.loadString(XML.scala:57)
>   at org.apache.spark.ui.UIUtils$.makeDescription(UIUtils.scala:417)
>   at 
> org.apache.spark.ui.jobs.StageTableBase$$anonfun$5$$anonfun$apply$1.apply(StageTable.scala:118)
>   at 
> org.apache.spark.ui.jobs.StageTableBase$$anonfun$5$$anonfun$apply$1.apply(StageTable.scala:116)
>   at scala.Option.map(Option.scala:145)
>   at 
> org.apache.spark.ui.jobs.StageTableBase$$anonfun$5.apply(StageTable.scala:116)
>   at 
> org.apache.spark.ui.jobs.StageTableBase$$anonfun$5.apply(StageTable.scala:115)
>   at scala.Option.flatMap(Option.scala:170)
>   at 
> org.apache.spark.ui.jobs.StageTableBase.makeDescription(StageTable.scala:115)
>   at 
> org.apache.spark.ui.jobs.StageTableBase.stageRow(StageTable.scala:177)
>   at 
> org.apache.spark.ui.jobs.StageTableBase.org$apache$spark$ui$jobs$StageTableBase$$renderStageRow(StageTable.scala:195)
>   at 
> org.apache.spark.ui.jobs.StageTableBase$$anonfun$toNodeSeq$1.apply(StageTable.scala:60)
>   at 
> org.apache.spark.ui.jobs.StageTableBase$$anonfun$toNodeSeq$1.apply(StageTable.scala:60)
>   at 
> org.apache.spark.ui.jobs.StageTableBase$$anonfun$stageTable$1.apply(StageTable.scala:69)
>   at 
> org.apache.spark.ui.jobs.StageTableBase$$anonfun$stageTable$1.apply(StageTable.scala:69)
>   at 

[jira] [Commented] (SPARK-11824) WebUI does not render descriptions with 'bad' HTML, throws console error

2015-11-30 Thread Sean Owen (JIRA)

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

Sean Owen commented on SPARK-11824:
---

Well, at the least we would use commons3 over commons, and escapeHtml4 there 
over escapeXml. I see escapeHtml4 used as well as Utility.escape. It'd be good 
to standardize but escapeHtml4 may be better.

> WebUI does not render descriptions with 'bad' HTML, throws console error
> 
>
> Key: SPARK-11824
> URL: https://issues.apache.org/jira/browse/SPARK-11824
> Project: Spark
>  Issue Type: Bug
>  Components: SQL, Web UI
>Affects Versions: 1.5.2
> Environment: RHEL 6, Java 1.7, Mesos 0.25.0
>Reporter: Andy Robb
>Priority: Minor
>  Labels: starter
>
> When using SparkSQL CLI, running a query with less-than or greater-than 
> symbols in a query, viewing the Web UI will throw the following console 
> warning. (The table and column names have been changed from the actual query.)
> This occurs across CLI invocations. The warning is thrown each time the UI is 
> refreshed, both during query execution and after the query is complete. 
> {noformat}
> 15/11/18 10:45:31 WARN ui.UIUtils: Invalid job description: select count(1) 
> from table1 where date >= '2015-11-01' and date <= '2015-11-15' 
> org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 114; The content 
> of elements must consist of well-formed character data or markup.
>   at 
> com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:198)
>   at 
> com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:177)
>   at 
> com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:441)
>   at 
> com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:368)
>   at 
> com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1436)
>   at 
> com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.startOfMarkup(XMLDocumentFragmentScannerImpl.java:2636)
>   at 
> com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2734)
>   at 
> com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:606)
>   at 
> com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510)
>   at 
> com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:848)
>   at 
> com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:777)
>   at 
> com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141)
>   at 
> com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1213)
>   at 
> com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:648)
>   at 
> com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.parse(SAXParserImpl.java:332)
>   at scala.xml.factory.XMLLoader$class.loadXML(XMLLoader.scala:40)
>   at scala.xml.XML$.loadXML(XML.scala:57)
>   at scala.xml.factory.XMLLoader$class.loadString(XMLLoader.scala:59)
>   at scala.xml.XML$.loadString(XML.scala:57)
>   at org.apache.spark.ui.UIUtils$.makeDescription(UIUtils.scala:417)
>   at 
> org.apache.spark.ui.jobs.StageTableBase$$anonfun$5$$anonfun$apply$1.apply(StageTable.scala:118)
>   at 
> org.apache.spark.ui.jobs.StageTableBase$$anonfun$5$$anonfun$apply$1.apply(StageTable.scala:116)
>   at scala.Option.map(Option.scala:145)
>   at 
> org.apache.spark.ui.jobs.StageTableBase$$anonfun$5.apply(StageTable.scala:116)
>   at 
> org.apache.spark.ui.jobs.StageTableBase$$anonfun$5.apply(StageTable.scala:115)
>   at scala.Option.flatMap(Option.scala:170)
>   at 
> org.apache.spark.ui.jobs.StageTableBase.makeDescription(StageTable.scala:115)
>   at 
> org.apache.spark.ui.jobs.StageTableBase.stageRow(StageTable.scala:177)
>   at 
> org.apache.spark.ui.jobs.StageTableBase.org$apache$spark$ui$jobs$StageTableBase$$renderStageRow(StageTable.scala:195)
>   at 
> org.apache.spark.ui.jobs.StageTableBase$$anonfun$toNodeSeq$1.apply(StageTable.scala:60)
>   at 
> org.apache.spark.ui.jobs.StageTableBase$$anonfun$toNodeSeq$1.apply(StageTable.scala:60)
>   at 
> org.apache.spark.ui.jobs.StageTableBase$$anonfun$stageTable$1.apply(StageTable.scala:69)
>   at 
> org.apache.spark.ui.jobs.StageTableBase$$anonfun$stageTable$1.apply(StageTable.scala:69)
>   at 

[jira] [Commented] (SPARK-11824) WebUI does not render descriptions with 'bad' HTML, throws console error

2015-11-29 Thread Yongjia Wang (JIRA)

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

Yongjia Wang commented on SPARK-11824:
--

Yes, this is annoying and not just for CLI. 
But you can turn off the annoying message like this
LogManager.getLogger("org.apache.spark.ui").setLevel(Level.ERROR)

> WebUI does not render descriptions with 'bad' HTML, throws console error
> 
>
> Key: SPARK-11824
> URL: https://issues.apache.org/jira/browse/SPARK-11824
> Project: Spark
>  Issue Type: Bug
>  Components: SQL, Web UI
>Affects Versions: 1.5.2
> Environment: RHEL 6, Java 1.7, Mesos 0.25.0
>Reporter: Andy Robb
>Priority: Minor
>
> When using SparkSQL CLI, running a query with less-than or greater-than 
> symbols in a query, viewing the Web UI will throw the following console 
> warning. (The table and column names have been changed from the actual query.)
> This occurs across CLI invocations. The warning is thrown each time the UI is 
> refreshed, both during query execution and after the query is complete. 
> {noformat}
> 15/11/18 10:45:31 WARN ui.UIUtils: Invalid job description: select count(1) 
> from table1 where date >= '2015-11-01' and date <= '2015-11-15' 
> org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 114; The content 
> of elements must consist of well-formed character data or markup.
>   at 
> com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:198)
>   at 
> com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.fatalError(ErrorHandlerWrapper.java:177)
>   at 
> com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:441)
>   at 
> com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:368)
>   at 
> com.sun.org.apache.xerces.internal.impl.XMLScanner.reportFatalError(XMLScanner.java:1436)
>   at 
> com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.startOfMarkup(XMLDocumentFragmentScannerImpl.java:2636)
>   at 
> com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2734)
>   at 
> com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:606)
>   at 
> com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510)
>   at 
> com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:848)
>   at 
> com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:777)
>   at 
> com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141)
>   at 
> com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1213)
>   at 
> com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:648)
>   at 
> com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.parse(SAXParserImpl.java:332)
>   at scala.xml.factory.XMLLoader$class.loadXML(XMLLoader.scala:40)
>   at scala.xml.XML$.loadXML(XML.scala:57)
>   at scala.xml.factory.XMLLoader$class.loadString(XMLLoader.scala:59)
>   at scala.xml.XML$.loadString(XML.scala:57)
>   at org.apache.spark.ui.UIUtils$.makeDescription(UIUtils.scala:417)
>   at 
> org.apache.spark.ui.jobs.StageTableBase$$anonfun$5$$anonfun$apply$1.apply(StageTable.scala:118)
>   at 
> org.apache.spark.ui.jobs.StageTableBase$$anonfun$5$$anonfun$apply$1.apply(StageTable.scala:116)
>   at scala.Option.map(Option.scala:145)
>   at 
> org.apache.spark.ui.jobs.StageTableBase$$anonfun$5.apply(StageTable.scala:116)
>   at 
> org.apache.spark.ui.jobs.StageTableBase$$anonfun$5.apply(StageTable.scala:115)
>   at scala.Option.flatMap(Option.scala:170)
>   at 
> org.apache.spark.ui.jobs.StageTableBase.makeDescription(StageTable.scala:115)
>   at 
> org.apache.spark.ui.jobs.StageTableBase.stageRow(StageTable.scala:177)
>   at 
> org.apache.spark.ui.jobs.StageTableBase.org$apache$spark$ui$jobs$StageTableBase$$renderStageRow(StageTable.scala:195)
>   at 
> org.apache.spark.ui.jobs.StageTableBase$$anonfun$toNodeSeq$1.apply(StageTable.scala:60)
>   at 
> org.apache.spark.ui.jobs.StageTableBase$$anonfun$toNodeSeq$1.apply(StageTable.scala:60)
>   at 
> org.apache.spark.ui.jobs.StageTableBase$$anonfun$stageTable$1.apply(StageTable.scala:69)
>   at 
> org.apache.spark.ui.jobs.StageTableBase$$anonfun$stageTable$1.apply(StageTable.scala:69)
>   at scala.collection.immutable.Stream.map(Stream.scala:376)
>   at 
>