diff --git a/src/explorviz/live_trace_processing/filter/reconstruction/TraceReconstructionBuffer.java b/src/explorviz/live_trace_processing/filter/reconstruction/TraceReconstructionBuffer.java index 7b145caaa8a69eddcaebd596683ccbe93a32e9fe..a82d32bf7d4f6f9f31f120e0f80c4dfb1099fd75 100644 --- a/src/explorviz/live_trace_processing/filter/reconstruction/TraceReconstructionBuffer.java +++ b/src/explorviz/live_trace_processing/filter/reconstruction/TraceReconstructionBuffer.java @@ -76,13 +76,13 @@ class TraceReconstructionBuffer { } public final Trace toTrace(final boolean valid) { - final Stack<AbstractEventRecord> stack = new Stack<AbstractEventRecord>(); + final Stack<AbstractBeforeEventRecord> stack = new Stack<AbstractBeforeEventRecord>(); for (final AbstractEventRecord event : events) { if (event instanceof AbstractBeforeEventRecord) { - stack.push(event); + stack.push((AbstractBeforeEventRecord) event); } else if ((event instanceof AbstractAfterEventRecord) || (event instanceof AbstractAfterFailedEventRecord)) { - final AbstractEventRecord beforeEvent = stack.pop(); + final AbstractBeforeEventRecord beforeEvent = stack.pop(); final long time = event.getLoggingTimestamp() - beforeEvent.getLoggingTimestamp(); beforeEvent.getRuntime().set(time); diff --git a/src/explorviz/live_trace_processing/filter/reduction/summarization/TracePatternSummarizationBuffer.java b/src/explorviz/live_trace_processing/filter/reduction/summarization/TracePatternSummarizationBuffer.java index a7cba068b83fcb8898ae80ca1abba0faf3e4a5eb..d6d7635d52cfd8c2d590d2df8fd10beebc29d6ce 100644 --- a/src/explorviz/live_trace_processing/filter/reduction/summarization/TracePatternSummarizationBuffer.java +++ b/src/explorviz/live_trace_processing/filter/reduction/summarization/TracePatternSummarizationBuffer.java @@ -32,7 +32,11 @@ class TracePatternSummarizationBuffer { for (int i = 0; i < aggregatedRecords.size(); i++) { final AbstractEventRecord event = aggregatedRecords.get(i); if (event instanceof AbstractBeforeEventRecord) { - aggregatedRecords.get(i).getRuntime().merge(records.get(i).getRuntime()); + final AbstractBeforeEventRecord abstractBeforeEventRecord = (AbstractBeforeEventRecord) event; + final AbstractBeforeEventRecord abstractBeforeEventRecord2 = (AbstractBeforeEventRecord) records + .get(i); + abstractBeforeEventRecord.getRuntime().merge( + abstractBeforeEventRecord2.getRuntime()); } } } diff --git a/src/explorviz/live_trace_processing/reader/TCPReaderOneClient.java b/src/explorviz/live_trace_processing/reader/TCPReaderOneClient.java index 961c686c98a9a6b8154ac172ac4da26497779b23..71a6a7d584b519e4fecda457ee751290cc9f7718 100644 --- a/src/explorviz/live_trace_processing/reader/TCPReaderOneClient.java +++ b/src/explorviz/live_trace_processing/reader/TCPReaderOneClient.java @@ -303,8 +303,7 @@ public class TCPReaderOneClient extends Thread implements IPeriodicTimeSignalRec final String cause = stringRegistry.getStringFromId(causeId); putInRingBuffer(new AfterFailedOperationEventRecord(timestamp, traceId, orderIndex, - objectId, operation, cause, hostApplicationMetadata, - new RuntimeStatisticInformation())); + objectId, operation, cause, hostApplicationMetadata)); } catch (final IdNotAvailableException e) { putInWaitingMessages(buffer, AfterFailedOperationEventRecord.COMPRESSED_BYTE_LENGTH_WITH_CLAZZ_ID); @@ -322,7 +321,7 @@ public class TCPReaderOneClient extends Thread implements IPeriodicTimeSignalRec final String operation = stringRegistry.getStringFromId(operationId); putInRingBuffer(new AfterOperationEventRecord(timestamp, traceId, orderIndex, objectId, - operation, hostApplicationMetadata, new RuntimeStatisticInformation())); + operation, hostApplicationMetadata)); } catch (final IdNotAvailableException e) { putInWaitingMessages(buffer, AfterOperationEventRecord.COMPRESSED_BYTE_LENGTH_WITH_CLAZZ_ID); @@ -370,8 +369,7 @@ public class TCPReaderOneClient extends Thread implements IPeriodicTimeSignalRec final String cause = stringRegistry.getStringFromId(causeId); putInRingBuffer(new AfterFailedConstructorEventRecord(timestamp, traceId, orderIndex, - objectId, operation, cause, hostApplicationMetadata, - new RuntimeStatisticInformation())); + objectId, operation, cause, hostApplicationMetadata)); } catch (final IdNotAvailableException e) { putInWaitingMessages(buffer, AfterFailedConstructorEventRecord.COMPRESSED_BYTE_LENGTH_WITH_CLAZZ_ID); @@ -389,7 +387,7 @@ public class TCPReaderOneClient extends Thread implements IPeriodicTimeSignalRec final String operation = stringRegistry.getStringFromId(operationId); putInRingBuffer(new AfterConstructorEventRecord(timestamp, traceId, orderIndex, - objectId, operation, hostApplicationMetadata, new RuntimeStatisticInformation())); + objectId, operation, hostApplicationMetadata)); } catch (final IdNotAvailableException e) { putInWaitingMessages(buffer, AfterConstructorEventRecord.COMPRESSED_BYTE_LENGTH_WITH_CLAZZ_ID); @@ -426,8 +424,7 @@ public class TCPReaderOneClient extends Thread implements IPeriodicTimeSignalRec final String cause = stringRegistry.getStringFromId(causeId); putInRingBuffer(new AfterFailedStaticOperationEventRecord(timestamp, traceId, - orderIndex, operation, cause, hostApplicationMetadata, - new RuntimeStatisticInformation())); + orderIndex, operation, cause, hostApplicationMetadata)); } catch (final IdNotAvailableException e) { putInWaitingMessages(buffer, AfterFailedStaticOperationEventRecord.COMPRESSED_BYTE_LENGTH_WITH_CLAZZ_ID); @@ -444,7 +441,7 @@ public class TCPReaderOneClient extends Thread implements IPeriodicTimeSignalRec final String operation = stringRegistry.getStringFromId(operationId); putInRingBuffer(new AfterStaticOperationEventRecord(timestamp, traceId, orderIndex, - operation, hostApplicationMetadata, new RuntimeStatisticInformation())); + operation, hostApplicationMetadata)); } catch (final IdNotAvailableException e) { putInWaitingMessages(buffer, AfterStaticOperationEventRecord.COMPRESSED_BYTE_LENGTH_WITH_CLAZZ_ID);