From a94d6bb7d88cbbb27a8d956a6bbbc13491993226 Mon Sep 17 00:00:00 2001 From: Florian Fittkau <ffi@informatik.uni-kiel.de> Date: Fri, 13 Jun 2014 23:35:00 +0200 Subject: [PATCH] objectIds sets --- .../reconstruction/TraceReconstructionBuffer.java | 12 ++++++------ .../filter/reduction/TracesSummarizationBuffer.java | 13 ++++++++++++- .../reduction/summarization/IterationFilter.java | 3 ++- .../summarization/PatternSummarizationFilter.java | 3 ++- .../summarization/TreeSummarizationFilter.java | 2 +- 5 files changed, 23 insertions(+), 10 deletions(-) diff --git a/src/explorviz/live_trace_processing/filter/reconstruction/TraceReconstructionBuffer.java b/src/explorviz/live_trace_processing/filter/reconstruction/TraceReconstructionBuffer.java index ebb21e4..ea56269 100644 --- a/src/explorviz/live_trace_processing/filter/reconstruction/TraceReconstructionBuffer.java +++ b/src/explorviz/live_trace_processing/filter/reconstruction/TraceReconstructionBuffer.java @@ -32,12 +32,12 @@ class TraceReconstructionBuffer { openEvents++; final AbstractBeforeEventRecord beforeEvent = (AbstractBeforeEventRecord) event; beforeEvent.setRuntimeStatisticInformation(new RuntimeStatisticInformation(1, -1, -1)); // TODO - // if - // invalid - // trace - // would - // be - // null... + // if + // invalid, + // trace + // would + // be + // null... } else if ((event instanceof AbstractAfterFailedEventRecord) || (event instanceof AbstractAfterEventRecord)) { openEvents--; diff --git a/src/explorviz/live_trace_processing/filter/reduction/TracesSummarizationBuffer.java b/src/explorviz/live_trace_processing/filter/reduction/TracesSummarizationBuffer.java index 9622d7c..d000ac9 100644 --- a/src/explorviz/live_trace_processing/filter/reduction/TracesSummarizationBuffer.java +++ b/src/explorviz/live_trace_processing/filter/reduction/TracesSummarizationBuffer.java @@ -25,6 +25,16 @@ class TracesSummarizationBuffer { public void insertTrace(final Trace trace) { if (accumulator == null) { accumulator = trace; + + for (int i = 0; i < trace.getTraceEvents().size(); i++) { + final AbstractEventRecord event = trace.getTraceEvents().get(i); + if (event instanceof AbstractBeforeEventRecord) { + final AbstractBeforeEventRecord abstractBeforeEventRecord = (AbstractBeforeEventRecord) event; + abstractBeforeEventRecord.getRuntimeStatisticInformation().makeAccumulator( + abstractBeforeEventRecord.getObjectId()); + } + } + } else { final List<AbstractEventRecord> aggregatedRecords = accumulator.getTraceEvents(); final List<AbstractEventRecord> records = trace.getTraceEvents(); @@ -36,7 +46,8 @@ class TracesSummarizationBuffer { final AbstractBeforeEventRecord abstractBeforeEventRecord2 = (AbstractBeforeEventRecord) records .get(i); abstractBeforeEventRecord.getRuntimeStatisticInformation().merge( - abstractBeforeEventRecord2.getRuntimeStatisticInformation()); + abstractBeforeEventRecord2.getRuntimeStatisticInformation(), + abstractBeforeEventRecord2.getObjectId()); } } } diff --git a/src/explorviz/live_trace_processing/filter/reduction/summarization/IterationFilter.java b/src/explorviz/live_trace_processing/filter/reduction/summarization/IterationFilter.java index ba091d3..2f9ada0 100644 --- a/src/explorviz/live_trace_processing/filter/reduction/summarization/IterationFilter.java +++ b/src/explorviz/live_trace_processing/filter/reduction/summarization/IterationFilter.java @@ -35,7 +35,8 @@ public class IterationFilter extends AbstractReductionFilter implements ITraceRe if (firstBeforeEvent.compareTo(secondBeforeEvent) == 0) { if (traceEvents.get(i + 3) instanceof AbstractAfterEventRecord) { secondBeforeEvent.getRuntimeStatisticInformation().merge( - firstBeforeEvent.getRuntimeStatisticInformation()); + firstBeforeEvent.getRuntimeStatisticInformation(), + firstBeforeEvent.getObjectId()); i += 2; } else { newTraceEvents.add(firstBeforeEvent); diff --git a/src/explorviz/live_trace_processing/filter/reduction/summarization/PatternSummarizationFilter.java b/src/explorviz/live_trace_processing/filter/reduction/summarization/PatternSummarizationFilter.java index a1dfb57..8f668a2 100644 --- a/src/explorviz/live_trace_processing/filter/reduction/summarization/PatternSummarizationFilter.java +++ b/src/explorviz/live_trace_processing/filter/reduction/summarization/PatternSummarizationFilter.java @@ -121,7 +121,8 @@ public class PatternSummarizationFilter extends AbstractReductionFilter { final AbstractBeforeEventRecord nextEqualEvent = (AbstractBeforeEventRecord) traceEvents .get(i + (r * d)); beforeEvent.getRuntimeStatisticInformation().merge( - nextEqualEvent.getRuntimeStatisticInformation()); + nextEqualEvent.getRuntimeStatisticInformation(), + nextEqualEvent.getObjectId()); } } diff --git a/src/explorviz/live_trace_processing/filter/reduction/summarization/TreeSummarizationFilter.java b/src/explorviz/live_trace_processing/filter/reduction/summarization/TreeSummarizationFilter.java index 2b018c0..f924140 100644 --- a/src/explorviz/live_trace_processing/filter/reduction/summarization/TreeSummarizationFilter.java +++ b/src/explorviz/live_trace_processing/filter/reduction/summarization/TreeSummarizationFilter.java @@ -81,7 +81,7 @@ public class TreeSummarizationFilter extends AbstractReductionFilter { private void mergeInformation(final Edge edge, final AbstractBeforeEventRecord caller, final AbstractBeforeEventRecord callee) { edge.getCallee().getRuntimeStatisticInformation() - .merge(callee.getRuntimeStatisticInformation()); + .merge(callee.getRuntimeStatisticInformation(), callee.getObjectId()); } private Trace buildTraceFromEdges(final List<Edge> edges) { -- GitLab