Fix for bug 385419: Streaming issues with legacy LTTng traces.
authorPatrick Tasse <patrick.tasse@gmail.com>
Wed, 18 Jul 2012 15:25:21 +0000 (11:25 -0400)
committerPatrick Tasse <patrick.tasse@gmail.com>
Wed, 18 Jul 2012 15:27:15 +0000 (11:27 -0400)
org.eclipse.linuxtools.lttng.core/src/org/eclipse/linuxtools/internal/lttng/core/trace/LTTngTrace.java
org.eclipse.linuxtools.tmf.core/src/org/eclipse/linuxtools/tmf/core/trace/TmfExperiment.java

index b7ccb1cbbcd1cfd324aea1933a6b2bb0e8fb6e44..f6057d30e0d525dbc475a63d880b3046a93b8f70 100644 (file)
@@ -207,9 +207,7 @@ public class LTTngTrace extends TmfTrace<LttngEvent> implements ITmfEventParser<
                                 updateJniTrace();
                             }
                         };
-                        synchronized (experiment) {
-                            experiment.sendRequest(request);
-                        }
+                        experiment.sendRequest(request);
                         try {
                             request.waitForCompletion();
                         } catch (final InterruptedException e) {
index 07ac017010744745bdfc0a3fa6a237c97da8ac04..5c13ebf55a27e743e1374bc91348fdffe147d0ca 100644 (file)
@@ -461,6 +461,7 @@ public class TmfExperiment<T extends ITmfEvent> extends TmfTrace<T> implements I
 
         final Thread thread = new Thread("Streaming Monitor for experiment " + getName()) { //$NON-NLS-1$
             private ITmfTimestamp safeTimestamp = null;
+            private ITmfTimestamp lastSafeTimestamp = null;
             private TmfTimeRange timeRange = null;
 
             @Override
@@ -477,8 +478,9 @@ public class TmfExperiment<T extends ITmfEvent> extends TmfTrace<T> implements I
                                 endTimestamp = trace.getEndTime();
                             }
                         }
-                        if (safeTimestamp != null && safeTimestamp.compareTo(getTimeRange().getEndTime(), false) > 0) {
+                        if (safeTimestamp != null && (lastSafeTimestamp == null || safeTimestamp.compareTo(lastSafeTimestamp, false) > 0)) {
                             timeRange = new TmfTimeRange(startTimestamp, safeTimestamp);
+                            lastSafeTimestamp = safeTimestamp;
                         } else {
                             timeRange = null;
                         }
This page took 0.026884 seconds and 5 git commands to generate.