[ https://issues.apache.org/jira/browse/YARN-9728?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16921689#comment-16921689 ]
Eric Yang commented on YARN-9728: --------------------------------- [~tde] {quote}Why we do no replace de illegal char by \uFFFd witch is the char dedicated to replace unrepresentable character ?{quote} Good suggestion. {quote}This issue is due to this jaxb-ri issue : https://github.com/eclipse-ee4j/jaxb-ri/issues/960, isn'it ?{quote} This problem is caused by serialization problem in jaxb and there is no good solution unless backward compatibility is thrown out. This patch is a workaround to avoid display the illegal characters. Correct me if I am wrong, It is stop gap solution, and probably can be workaround by using ui2 to view the diagnostic message. > ResourceManager REST API can produce an illegal xml response > ------------------------------------------------------------- > > Key: YARN-9728 > URL: https://issues.apache.org/jira/browse/YARN-9728 > Project: Hadoop YARN > Issue Type: Bug > Components: api, resourcemanager > Affects Versions: 2.7.3 > Reporter: Thomas > Assignee: Prabhu Joseph > Priority: Major > Attachments: IllegalResponseChrome.png, YARN-9728-001.patch, > YARN-9728-002.patch, YARN-9728-003.patch > > > When a spark job throws an exception with a message containing a character > out of the range supported by xml 1.0, then > the application fails and the stack trace will be stored into the > {{diagnostics}} field. So far, so good. > But the issue occurred when we try to get application information with the > ResourceManager REST API > The xml response will contain the illegal xml 1.0 char and will be invalid. > *+Examples of illegals characters in xml 1.0 :+* > * {{\u0000}} > * {{\u0001}} > * {{\u0002}} > * {{\u0003}} > * {{\u0004}} > _For more information about supported characters :_ > [https://www.w3.org/TR/xml/#charsets] > *+Example of illegal response from the Ressource Manager API :+* > {code:xml} > <?xml version="1.0" encoding="UTF-8" standalone="yes"?> > <app> > <id>application_1326821518301_0005</id> > <user>user1</user> > <name>job</name> > <queue>a1</queue> > <state>FINISHED</state> > <finalStatus>FAILED</finalStatus> > <progress>100.0</progress> > <trackingUI>History</trackingUI> > > <trackingUrl>http://host.domain.com:8088/proxy/application_1326821518301_0005/jobhistory/job/job_1326821518301_5_5</trackingUrl> > <diagnostics>Exception in thread "main" java.lang.Exception: \u0001 > at com.XXXXXXXX.main(JobWithSpecialCharMain.java:6)</diagnostics> > [...] > </app> > {code} > > *+Example of job to reproduce :+* > {code:java} > public class JobWithSpecialCharMain { > public static void main(String[] args) throws Exception { > throw new Exception("\u0001"); > } > } > {code} > {code:bash} > javac -d . JobWithSpecialCharMain.java > jar cvf repro.jar com/ > spark-submit --class com.JobWithSpecialCharMain --master yarn-cluster > repro.jar > {code} > !IllegalResponseChrome.png! -- This message was sent by Atlassian Jira (v8.3.2#803003) --------------------------------------------------------------------- To unsubscribe, e-mail: yarn-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: yarn-issues-h...@hadoop.apache.org