9aman opened a new pull request, #15016:
URL: https://github.com/apache/pinot/pull/15016

   ## Issue 
   
   Fetching COMMITTING segments for the pauseless table is an expensive 
operation as it requires fetching ZK metadata for all the segments and 
filtering out those that have `status == COMMITTING`
   
   ## Scope of the PR.
   
   The PR adds a new entry `/PAUSELESS_DEBUG_METADATA/{tableName} ` under the 
property store to maintain the list of COMMITTING segments. This will help in 
fetching the COMMITTING segments in the debug API (will be added to this PR).
   
   ### Addition of segment into the list
   The segment is added at the start of the commit protocol 
   
   ### Removal of segment from the list
   The segment is removed from the list after the segment is marked DONE in the 
`COMMIT_END_METADATA` call. 
   
   ### Handling Failures in update
   
   #### Failure in adding segment to the list
   The servers, during the commit protocol, keep on retrying the commit till 
the segment is marked COMMITTING. The list is updated before the segment is 
marked COMMITTING (in ZK) and hence any failures will be retried.
   
   
   #### Failure in removing segment from the list. 
   RealtimeSegmentValidationManager will remove segments from the list if there 
status is DONE or the metadata is not present (possibly the segment has been 
deleted).
   
   
   
   


-- 
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: commits-unsubscr...@pinot.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@pinot.apache.org
For additional commands, e-mail: commits-h...@pinot.apache.org

Reply via email to