[WIP/POC] Embedded test exposing pending segment upgrade failure during minor compaction #19673
[WIP/POC] Embedded test exposing pending segment upgrade failure during minor compaction #19673cecemei wants to merge 2 commits into
Conversation
|
@cecemei , good catch! The problem is that the current upgrade logic sends the upgrade notification to only a single supervisor by using The fix for this would be to either send the upgrade notification to all supervisors for that datasource, or to find the one supervisor which actually allocated this segment and send the notification to it. You can update this PR to include the fix along with a simple unit test. |
Description
Adds KafkaIngestionWithCompactionTest to reproduce a bug where realtime pending segments are not upgraded after minor compaction.
The bug: When minor compaction replaces V1 historical segments with V2, the overlord should call registerUpgradedPendingSegment on active realtime tasks to re-announce their pending segments at V2. In this scenario, that upgrade never happens, the log
==== StreamAppenderator: announcing upgraded realtime segmentis absent, meaning the slow supervisor's rows become invisible to queries once V1 segments are superseded.Test setup:
When the bug is present, assumeTrue passes and the test proceeds to a success, we've verified the buggy behavior end-to-end.
This PR has: