Avery Ching created GIRAPH-609:
----------------------------------

             Summary: More information on runtime exceptions for Callables
                 Key: GIRAPH-609
                 URL: https://issues.apache.org/jira/browse/GIRAPH-609
             Project: Giraph
          Issue Type: Bug
            Reporter: Avery Ching
            Assignee: Avery Ching


We ocassionally see errors in user code such as 

java.lang.IllegalStateException: run: Caught an unrecoverable exception 
waitFor: ExecutionException occurred while waiting for 
org.apache.giraph.utils.ProgressableUtils$FutureWaitable@7215f9e4 at 
org.apache.giraph.graph.GraphMapper.run(GraphMapper.java:102) at 
org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:632) at 
org.apache.hadoop.mapred.MapTask.run(MapTask.java:307) at 
org.apache.hadoop.mapred.Child.main(Child.java:171) Caused by: 
java.lang.IllegalStateException: waitFor: ExecutionException occurred while 
waiting for org.apache.giraph.utils.ProgressableUtils$FutureWaitable@7215f9e4 
at 
org.apache.giraph.utils.ProgressableUtils.waitFor(ProgressableUtils.java:145) 
at 
org.apache.giraph.utils.ProgressableUtils.waitForever(ProgressableUtils.java:105)
 at 
org.apache.giraph.utils.ProgressableUtils.getFutureResult(ProgressableUtils.java:67)
 at 
org.apache.giraph.graph.GraphTaskManager.processGraphPartitions(GraphTaskManager.java:738)
 at org.apache.giraph.graph.GraphTaskManager.execute(GraphTaskManager.java:267) 
at org.apache.giraph.graph.GraphMapper.run(GraphMapper.java:92) ... 3 more 
Caused by: java.util.concurrent.ExecutionException: 
java.lang.ArrayIndexOutOfBoundsException at 
java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:262) at 
java.util.concurrent.FutureTask.get(FutureTask.java:119) at 
org.apache.giraph.utils.ProgressableUtils$FutureWaitable.waitFor(ProgressableUtils.java:232)
 at 
org.apache.giraph.utils.ProgressableUtils.waitFor(ProgressableUtils.java:137) 
... 8 more Caused by: java.lang.ArrayIndexOutOfBoundsException ,Job killed

But it doesn't provide a lot of information about the actual stack trace in the 
user land code of the callable.  We can wrap the invocation of the 
Callable#run() to get access to this stack, which can be very helpful for 
debugging user code.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to