[ 
https://issues.apache.org/jira/browse/FLINK-5645?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15878262#comment-15878262
 ] 

ASF GitHub Bot commented on FLINK-5645:
---------------------------------------

Github user tillrohrmann commented on a diff in the pull request:

    https://github.com/apache/flink/pull/3377#discussion_r102464984
  
    --- Diff: 
flink-runtime/src/main/java/org/apache/flink/runtime/executiongraph/ExecutionGraph.java
 ---
    @@ -1292,10 +1292,28 @@ public boolean updateState(TaskExecutionState 
state) {
                                        }
                                        return true;
                                case CANCELED:
    -                                   attempt.cancelingComplete();
    +                                   AccumulatorSnapshot acc1 = 
state.getAccumulators();
    +                                   Map<String, Accumulator<?, ?>> userAcc1 
= null;
    +                                   if (acc1 != null) {
    +                                           try {
    +                                                   userAcc1 = 
acc1.deserializeUserAccumulators(userClassLoader);
    +                                           } catch (Exception e) {
    +                                                   LOG.error("Failed to 
deserialize final accumulator results.", e);
    +                                           }
    +                                   }
    +                                   attempt.cancelingComplete(userAcc1, 
state.getIOMetrics());
                                        return true;
                                case FAILED:
    -                                   
attempt.markFailed(state.getError(userClassLoader));
    +                                   AccumulatorSnapshot acc2 = 
state.getAccumulators();
    +                                   Map<String, Accumulator<?, ?>> userAcc2 
= null;
    +                                   if (acc2 != null) {
    +                                           try {
    +                                                   userAcc2 = 
acc2.deserializeUserAccumulators(userClassLoader);
    +                                           } catch (Exception e) {
    +                                                   LOG.error("Failed to 
deserialize final accumulator results.", e);
    +                                           }
    +                                   }
    --- End diff --
    
    Can this deserialization logic be factored out into a method?


> IOMetrics transfer through ExecGraph does not work for failed jobs
> ------------------------------------------------------------------
>
>                 Key: FLINK-5645
>                 URL: https://issues.apache.org/jira/browse/FLINK-5645
>             Project: Flink
>          Issue Type: Bug
>          Components: Metrics, Webfrontend
>    Affects Versions: 1.2.0, 1.3.0
>            Reporter: Chesnay Schepler
>            Assignee: Chesnay Schepler
>            Priority: Blocker
>
> While a job is running the web-interface polls IO metrics using the 
> MetricFetcher/MetricQueryService. For finished jobs these metrics are stored 
> in the ExecutionGraph; each vertex has an IOMetrics object; basically a 
> snapshot taken when the task was finished. 
> For completed jobs this mechanism is working. However, for failed jobs it 
> doesn't; in this case last fetched metrics are displayed.
> This isn't intended behavior and should be fixed.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to