You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@systemml.apache.org by "Felix Schüler (JIRA)" <ji...@apache.org> on 2016/12/09 20:08:59 UTC

[jira] [Created] (SYSTEMML-1147) Improvements for error reporting

Felix Schüler created SYSTEMML-1147:
---------------------------------------

             Summary: Improvements for error reporting
                 Key: SYSTEMML-1147
                 URL: https://issues.apache.org/jira/browse/SYSTEMML-1147
             Project: SystemML
          Issue Type: Epic
          Components: Compiler, Documentation
            Reporter: Felix Schüler


Error reporting is in many cases not very user friendly. 
For example, wrong indexing in a user-defined function leads to long stack-traces that only contain information about the instructions and finally end with an IndexOutOfBoundsException. 

In general, the reported instructions are not very helpful because they also only contain renamed variables (e.g. _Var42) that don't correspond to anything in the DML script.

This epic is to track error messages that could use some improvements.

Here is an Example of a case that is not very helpful:

{code}
Exception in thread "main" org.apache.sysml.api.mlcontext.MLContextException: Exception when executing script
	at org.apache.sysml.api.mlcontext.MLContext.execute(MLContext.java:301)
	at org.apache.sysml.api.mlcontext.MLContext.execute(MLContext.java:270)
	at org.apache.sysml.examples.TSNE$$anon$1.run(TSNE.scala:8)
	at org.apache.sysml.examples.TSNE$$anon$1.run(TSNE.scala)
	at org.apache.sysml.examples.TSNE$.delayedEndpoint$org$apache$sysml$examples$TSNE$1(TSNE.scala:119)
	at org.apache.sysml.examples.TSNE$delayedInit$body.apply(TSNE.scala:6)
	at scala.Function0$class.apply$mcV$sp(Function0.scala:34)
	at scala.runtime.AbstractFunction0.apply$mcV$sp(AbstractFunction0.scala:12)
	at scala.App$$anonfun$main$1.apply(App.scala:76)
	at scala.App$$anonfun$main$1.apply(App.scala:76)
	at scala.collection.immutable.List.foreach(List.scala:381)
	at scala.collection.generic.TraversableForwarder$class.foreach(TraversableForwarder.scala:35)
	at scala.App$class.main(App.scala:76)
	at org.apache.sysml.examples.TSNE$.main(TSNE.scala:6)
	at org.apache.sysml.examples.TSNE.main(TSNE.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 com.intellij.rt.execution.application.AppMain.main(AppMain.java:147)
Caused by: org.apache.sysml.api.mlcontext.MLContextException: Exception occurred while executing runtime program
	at org.apache.sysml.api.mlcontext.ScriptExecutor.executeRuntimeProgram(ScriptExecutor.java:378)
	at org.apache.sysml.api.mlcontext.ScriptExecutor.execute(ScriptExecutor.java:321)
	at org.apache.sysml.api.mlcontext.MLContext.execute(MLContext.java:293)
	... 19 more
Caused by: org.apache.sysml.runtime.DMLRuntimeException: org.apache.sysml.runtime.DMLRuntimeException: ERROR: Runtime error in program block generated from statement block between lines 62 and 62 -- Error evaluating instruction: CP°extfunct°.defaultNS°x2p°2°1°X·MATRIX·DOUBLE°30·SCALAR·INT·true°inter
	at org.apache.sysml.runtime.controlprogram.Program.execute(Program.java:130)
	at org.apache.sysml.api.mlcontext.ScriptExecutor.executeRuntimeProgram(ScriptExecutor.java:376)
	... 21 more
Caused by: org.apache.sysml.runtime.DMLRuntimeException: ERROR: Runtime error in program block generated from statement block between lines 62 and 62 -- Error evaluating instruction: CP°extfunct°.defaultNS°x2p°2°1°X·MATRIX·DOUBLE°30·SCALAR·INT·true°inter
	at org.apache.sysml.runtime.controlprogram.ProgramBlock.executeSingleInstruction(ProgramBlock.java:320)
	at org.apache.sysml.runtime.controlprogram.ProgramBlock.executeInstructions(ProgramBlock.java:221)
	at org.apache.sysml.runtime.controlprogram.ProgramBlock.execute(ProgramBlock.java:168)
	at org.apache.sysml.runtime.controlprogram.Program.execute(Program.java:123)
	... 22 more
Caused by: org.apache.sysml.runtime.DMLRuntimeException: error executing function .defaultNS::x2p
	at org.apache.sysml.runtime.instructions.cp.FunctionCallCPInstruction.processInstruction(FunctionCallCPInstruction.java:177)
	at org.apache.sysml.runtime.controlprogram.ProgramBlock.executeSingleInstruction(ProgramBlock.java:290)
	... 25 more
Caused by: org.apache.sysml.runtime.DMLRuntimeException: ERROR: Runtime error in function program block generated from function statement block between lines 6 and 53 -- Error evaluating function program block
	at org.apache.sysml.runtime.controlprogram.FunctionProgramBlock.execute(FunctionProgramBlock.java:121)
	at org.apache.sysml.runtime.instructions.cp.FunctionCallCPInstruction.processInstruction(FunctionCallCPInstruction.java:170)
	... 26 more
Caused by: org.apache.sysml.runtime.DMLRuntimeException: ERROR: Runtime error in for program block generated from for statement block between lines 14 and 50 -- Error evaluating for program block
	at org.apache.sysml.runtime.controlprogram.ForProgramBlock.execute(ForProgramBlock.java:162)
	at org.apache.sysml.runtime.controlprogram.FunctionProgramBlock.execute(FunctionProgramBlock.java:114)
	... 27 more
Caused by: org.apache.sysml.runtime.DMLRuntimeException: ERROR: Runtime error in while program block generated from while statement block between lines 22 and 48 -- Error evaluating while program block
	at org.apache.sysml.runtime.controlprogram.WhileProgramBlock.execute(WhileProgramBlock.java:181)
	at org.apache.sysml.runtime.controlprogram.ForProgramBlock.execute(ForProgramBlock.java:150)
	... 28 more
Caused by: org.apache.sysml.runtime.DMLRuntimeException: ERROR: Runtime error in program block generated from statement block between lines 23 and 29 -- Error evaluating instruction: CP°leftIndex°_mVar283·MATRIX·DOUBLE°0.0·SCALAR·DOUBLE·true°_Var279·SCALAR·INT·false°_Var279·SCALAR·INT·false°1·SCALAR·INT·true°1·SCALAR·INT·true°_mVar284·MATRIX·DOUBLE
	at org.apache.sysml.runtime.controlprogram.ProgramBlock.executeSingleInstruction(ProgramBlock.java:320)
	at org.apache.sysml.runtime.controlprogram.ProgramBlock.executeInstructions(ProgramBlock.java:221)
	at org.apache.sysml.runtime.controlprogram.ProgramBlock.execute(ProgramBlock.java:168)
	at org.apache.sysml.runtime.controlprogram.WhileProgramBlock.execute(WhileProgramBlock.java:169)
	... 29 more
Caused by: java.lang.ArrayIndexOutOfBoundsException: 100
	at org.apache.sysml.runtime.matrix.data.MatrixBlock.quickSetValue(MatrixBlock.java:609)
	at org.apache.sysml.runtime.matrix.data.MatrixBlock.leftIndexingOperations(MatrixBlock.java:3714)
	at org.apache.sysml.runtime.instructions.cp.MatrixIndexingCPInstruction.processInstruction(MatrixIndexingCPInstruction.java:103)
	at org.apache.sysml.runtime.controlprogram.ProgramBlock.executeSingleInstruction(ProgramBlock.java:290)
	... 32 more
{/code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)