xiangfu0 commented on code in PR #19468:
URL: https://github.com/apache/pinot/pull/19468#discussion_r4091526080


##########
pinot-core/src/main/java/org/apache/pinot/core/data/manager/realtime/RealtimeTableDataManager.java:
##########
@@ -542,7 +550,29 @@ private void doAddConsumingSegment(String segmentName)
       return;
     }
     IndexLoadingConfig indexLoadingConfig = fetchIndexLoadingConfig();
-    handleSegmentPreload(zkMetadata, indexLoadingConfig);
+    LLCSegmentName llcSegmentName = new LLCSegmentName(segmentName);
+    int partitionGroupId = llcSegmentName.getPartitionGroupId();
+    PartitionUpsertMetadataManager partitionUpsertMetadataManager;
+    PartitionDedupMetadataManager partitionDedupMetadataManager;
+    synchronized (_segmentDataManagerMap) {

Review Comment:
   Follow-up after rebasing onto master (257a0e7): an independent trace of this 
same-name recreation path found three more ways a stale consuming callback 
could still act on the recreated table's segment, now closed in 34f2733a and 
6690a1b — a constructor-failed segment no longer posts (or retries) 
`segmentStoppedConsuming` once the table manager is shut down, the 
CONSUMING→ONLINE transition holds a reference so shutdown cannot destroy the 
mutable segment under the Helix thread's build, and the pauseless COMMITTING 
download wait re-checks shutdown each iteration instead of holding the shared 
segment lock until timeout. Each has a regression test that fails with its 
guard removed.
   
   _🤖 Addressed by [Claude Code](https://claude.com/claude-code)_



-- 
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