Clarifying VersionedIntervalTimeline.findFullyOvershadowed()
- Vorherrschende Sprache
- Java
- Sterne
- 14.1k
- Forks
- 3.8k
- Ø Merge
- 2 T. 58 Min.
- Gemergte PRs (30 T.)
- 233
Beschreibung
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.
Beitragsleitfaden
Rechercherichtung
Beginne in core/src/main/java/org/apache/druid/timeline/VersionedIntervalTimeline.java und lies findFullyOvershadowed(), insbesondere die Schleifen um die Zeilen 364-404 sowie die Kommentare zu completePartitionsTimeline und incompletePartitionsTimeline. Kläre, warum die erste Schleife über beide Timelines iteriert, während die zweite nur über incompletePartitionsTimeline iteriert; die Kommentare sollten diesen Unterschied verständlich machen.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- java
- Bereich
- databases
- Issue-Typ
- Dokumentation
- Schwierigkeit
- 2/5
- Geschätzter Aufwand
- 1-3 Stunden
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 45/100