In #7547, @jihoonson added clarifying comments for completePartitionsTimeline and incompletePartitionsTimeline fields in VersionedIntervalTimeline. One of the comments say that "IncompletePartitionsTimeline also includes completePartitionsTimeline".
It explains to me why the second part of the findFullyOvershadowed() algorithm iterates only over incompletePartitionsTimeline:
https://github.com/apache/incubator-druid/blob/7b9bd5359db80bdd9bb3f547161f94b369469b76/core/src/main/java/org/apache/druid/timeline/VersionedIntervalTimeline.java#L392-L404
But it doesn't explain why then the first part does exactly the same loop over both completePartitionsTimeline and incompletePartitionsTimeline:
https://github.com/apache/incubator-druid/blob/7b9bd5359db80bdd9bb3f547161f94b369469b76/core/src/main/java/org/apache/druid/timeline/VersionedIntervalTimeline.java#L364-L382
Related to #7433 and #8070.
In #7547, @jihoonson added clarifying comments for
completePartitionsTimelineandincompletePartitionsTimelinefields inVersionedIntervalTimeline. One of the comments say that "IncompletePartitionsTimeline also includes completePartitionsTimeline".It explains to me why the second part of the
findFullyOvershadowed()algorithm iterates only overincompletePartitionsTimeline:https://github.com/apache/incubator-druid/blob/7b9bd5359db80bdd9bb3f547161f94b369469b76/core/src/main/java/org/apache/druid/timeline/VersionedIntervalTimeline.java#L392-L404
But it doesn't explain why then the first part does exactly the same loop over both
completePartitionsTimelineandincompletePartitionsTimeline:https://github.com/apache/incubator-druid/blob/7b9bd5359db80bdd9bb3f547161f94b369469b76/core/src/main/java/org/apache/druid/timeline/VersionedIntervalTimeline.java#L364-L382
Related to #7433 and #8070.