leventov commented on issue #7571: Optimize coordinator API to retrieve segments with overshadowed status URL: https://github.com/apache/incubator-druid/issues/7571#issuecomment-495288920 @jihoonson > This sounds like going back to feature-based release instead of time-based one. Per the discussion you started, we are trying to freeze code every 3 months. Note that I unblocked #7425 only on the condition that people agree with the proposed approach and it's being implemented immediately: https://github.com/apache/incubator-druid/pull/7425#discussion_r279823676. If I knew that new round of debate will start, I wouldn't unblock that PR and insisted on completely resolving that question before merging. @gianm > From context I'm guessing it's the HTTP API. I suggest we address that by not documenting it and treating it as an internal API. Internal API cannot be broken either to ensure there is a safe rolling upgrade/downgrade plan. So version 0.16 would need to add alternative implementation while fully supporting the old `SegmentWithOvershadowedStatus`, and only 0.17 can remove `SegmentWithOvershadowedStatus`. --- I think the main reason why I proposed mutable `isOvershadowed` field was that I initially proposed to compute it lazily, on demand in `SQLMetadataSegmentManager`. However, later I agreed ([in this thread](#issuecomment-488330261), actually) that it can also be eager. So I think immutable would work fine. > I'm also curious about the benefit we can when DataSegment becomes mutable. Is there anything else except memory savings? Memory and concurrency (see #7595). So what about the following: - Immutable, but extensible `DataSegment`. - Immutable `SegmentWithOvershadowedStatus` which extends `DataSegment` (note: they also have different JSON representations). - Although immutable, both are decidedly *containers*, not "data classes". They both prohibit `equals()` and `hashCode()` as described [here](https://github.com/apache/incubator-druid/issues/6358#issuecomment-489102183).
---------------------------------------------------------------- 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. For queries about this service, please contact Infrastructure at: [email protected] With regards, Apache Git Services --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
