critical path: bug 490085 Always start critical path from head vertex
authorGeneviève Bastien <gbastien+lttng@versatic.net>
Tue, 24 May 2016 17:37:51 +0000 (13:37 -0400)
committerGenevieve Bastien <gbastien+lttng@versatic.net>
Tue, 31 May 2016 12:47:44 +0000 (08:47 -0400)
Previously, the critical path was calculated starting at the start of the
window range, but that behavior was not intuitive to the user and it was not
possible to change that window range once it is calculated.

Now the critical path is calculated for the whole of the worker's lifetime.

Change-Id: Id76192eec04dff6d3c45c1bd1314248d4ea991fb
Signed-off-by: Geneviève Bastien <gbastien+lttng@versatic.net>
Reviewed-on: https://git.eclipse.org/r/73515
Reviewed-by: Hudson CI
Reviewed-by: Matthew Khouzam <matthew.khouzam@ericsson.com>
analysis/org.eclipse.tracecompass.analysis.graph.core/src/org/eclipse/tracecompass/analysis/graph/core/criticalpath/CriticalPathModule.java

index 30e9289afd17b36e97403f3160360af6793d7a40..481d37cdb8ca7b05a065faf4cc5508fe79947eab 100644 (file)
@@ -24,9 +24,7 @@ import org.eclipse.tracecompass.internal.analysis.graph.core.criticalpath.Messag
 import org.eclipse.tracecompass.tmf.core.analysis.IAnalysisModule;
 import org.eclipse.tracecompass.tmf.core.analysis.TmfAbstractAnalysisModule;
 import org.eclipse.tracecompass.tmf.core.exceptions.TmfAnalysisException;
-import org.eclipse.tracecompass.tmf.core.timestamp.TmfTimeRange;
 import org.eclipse.tracecompass.tmf.core.trace.ITmfTrace;
-import org.eclipse.tracecompass.tmf.core.trace.TmfTraceManager;
 import org.eclipse.tracecompass.tmf.core.trace.TmfTraceUtils;
 
 /**
@@ -95,19 +93,10 @@ public class CriticalPathModule extends TmfAbstractAnalysisModule {
             fCriticalPath = new TmfGraph();
             return true;
         }
-        TmfTimeRange tr = TmfTraceManager.getInstance().getCurrentTraceContext().getWindowRange();
-        TmfVertex start = graph.getVertexAt(tr.getStartTime(), worker);
-        if (start == null) {
-            /*
-             * Nothing happens with this worker after start, return an empty
-             * graph
-             */
-            fCriticalPath = new TmfGraph();
-            return true;
-        }
+
         ICriticalPathAlgorithm cp = getAlgorithm(graph);
         try {
-            fCriticalPath = cp.compute(start, null);
+            fCriticalPath = cp.compute(head, null);
             return true;
         } catch (CriticalPathAlgorithmException e) {
             Activator.getInstance().logError(NonNullUtils.nullToEmptyString(e.getMessage()), e);
This page took 0.026716 seconds and 5 git commands to generate.