jtuglu-netflix commented on code in PR #17847:
URL: https://github.com/apache/druid/pull/17847#discussion_r2066822234


##########
server/src/main/java/org/apache/druid/segment/realtime/SegmentGenerationMetrics.java:
##########
@@ -55,6 +56,23 @@ public class SegmentGenerationMetrics
 
   private final AtomicLong maxSegmentHandoffTime = new 
AtomicLong(NO_EMIT_SEGMENT_HANDOFF_TIME);
 
+  // Message gap accounting
+  private final AtomicLong minMessageGap = new AtomicLong(Long.MAX_VALUE);
+  private final AtomicLong maxMessageGap = new AtomicLong(Long.MIN_VALUE);
+  private final AtomicLong numMessageGap = new AtomicLong(0);
+  private final AtomicDouble avgMessageGap = new AtomicDouble(0);

Review Comment:
   > If we keep two separate atomic fields, the snapshotting can potentially be 
inconsistent due to race conditions.
   
   Actually, this should never happen. There is a single writer to these 
fields, and potentially multiple readers (at the moment it's a single reader). 
The reader thread simply looks at one of these atomic fields. The "worst" case 
is the avg computation will be 1-step behind.



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to