KKcorps commented on PR #19632:
URL: https://github.com/apache/pinot/pull/19632#issuecomment-5830147798

   Thanks, the ERROR case looks good now. Could you add the `_currentOffset == 
endOffset` check from my last comment with a test, and refresh the PR body 
since it still mentions `markConsumingStopped()`? Replicas that catch up also 
never see EOF, so they'd fit in the same ZK-marker follow-up.
   
   Here's the case the check covers, before and after:
   
   **Today**
   
   ```mermaid
   sequenceDiagram
       participant B as Replica B
       participant C as Controller
       participant S1 as S1 on replica A
       participant S2 as S2 on replica A
       participant G as Gauge on replica A
       S1->>S1: reads to EOF at offset 200
       B->>C: wins the commit at offset 150
       C->>S2: shard not done at 150, start S2 from 150
       C->>S1: DISCARD, then ONLINE
       S1->>S1: downloads B's copy (ends at 150)
       S1->>G: _endOfPartitionGroup is true, remove gauge
       Note over S2: S2 stalls before its first fetch
       Note over G: gauge absent, alert stays quiet
   ```
   
   **With the offset check**
   
   ```mermaid
   sequenceDiagram
       participant B as Replica B
       participant C as Controller
       participant S1 as S1 on replica A
       participant S2 as S2 on replica A
       participant G as Gauge on replica A
       S1->>S1: reads to EOF at offset 200
       B->>C: wins the commit at offset 150
       C->>S2: shard not done at 150, start S2 from 150
       C->>S1: DISCARD, then ONLINE
       S1->>S1: downloads B's copy (ends at 150)
       S1->>G: 200 != 150, keep gauge at 0
       Note over S2: S2 stalls before its first fetch
       Note over G: gauge stays at 0, alert fires
   ```
   


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