[ https://issues.apache.org/jira/browse/SYSTEMML-611?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Deron Eriksson closed SYSTEMML-611. ----------------------------------- > Enhance display of parsing errors for user > ------------------------------------------ > > Key: SYSTEMML-611 > URL: https://issues.apache.org/jira/browse/SYSTEMML-611 > Project: SystemML > Issue Type: Task > Components: Parser > Reporter: Deron Eriksson > Assignee: Deron Eriksson > > Currently, if parsing errors occur, the actual messages are not displayed to > standard output or standard error except via log4j. As a result, if a user > does not have log4j configured, they do not see any of the actual parsing > error messages, which makes it extremely difficult to fix DML/PyDML. > As an example, executing the following code via DMLScript: > {code} > foo(); > {code} > generates the following result to the console if log4j is not configured: > {code} > Exception in thread "main" org.apache.sysml.api.DMLException: > org.apache.sysml.parser.ParseException: One or more errors found during > parsing (could not construct AST for file: example.dml). Cannot proceed ahead. > at org.apache.sysml.api.DMLScript.executeScript(DMLScript.java:350) > at org.apache.sysml.api.DMLScript.main(DMLScript.java:197) > Caused by: org.apache.sysml.parser.ParseException: One or more errors found > during parsing (could not construct AST for file: example.dml). Cannot > proceed ahead. > at > org.apache.sysml.parser.dml.DMLParserWrapper.parse(DMLParserWrapper.java:98) > at org.apache.sysml.api.DMLScript.execute(DMLScript.java:588) > at org.apache.sysml.api.DMLScript.executeScript(DMLScript.java:338) > ... 1 more > {code} > There are a few issues to address here. > 1) A stacktrace such as the one above does not help an end user to write/fix > DML/PyDML. In fact, it detracts from the important information (the parse > error message) that the user needs. > 2) The actual parsing errors are needed by the end user (not the stacktrace), > and these should be displayed to standard output/standard error (ie, the > console) if SystemML is being invoked via DMLScript. > 3) The parsing error information should be available at higher levels of the > call stack (ie, in DMLScript and MLContext, for example). Allowing this > information to be available at these higher levels has benefits, for example > to display the parse error information in a notebook via MLContext. -- This message was sent by Atlassian JIRA (v6.3.4#6332)