krishan1390 opened a new pull request, #18583: URL: https://github.com/apache/pinot/pull/18583
## Summary `DefaultLineageManager#shouldDeleteReplacedSegments` previously short-circuited on non-REFRESH tables and deleted replaced source segments immediately, ignoring `replacedSegmentsRetentionPeriod`. This drops that gate so APPEND tables (and any other replacement protocol that writes a `COMPLETED` lineage entry) get the same configurable grace window before their source segments are dropped. The renamed test `testAppendTableHonorsReplacedSegmentsRetentionPeriod` pins both sides of the boundary — a recent lineage entry is retained, an old one is deleted — using a single lineage with two entries. ## ⚠️ Backward-compat note This is a default-changing behavior for APPEND tables on rolling upgrade: - **Before:** APPEND tables deleted replaced source segments immediately, regardless of `replacedSegmentsRetentionPeriod`. - **After:** APPEND tables retain replaced source segments for the configured period (default: 1 day, from `REPLACED_SEGMENTS_RETENTION_IN_MILLIS`). Operators who relied on the old "delete immediately" behavior — typically those on tight storage budgets — can restore it explicitly by setting `replacedSegmentsRetentionPeriod: "0d"` on the table. Worth a release-notes mention and the `backward-incompat` label. ## Test plan - [x] `./mvnw -pl pinot-controller -am test -Dtest=DefaultLineageManagerTest` - [x] `./mvnw spotless:apply checkstyle:check license:check -pl pinot-controller` - [ ] Manual: confirm REFRESH-table replacement behavior is unchanged (existing tests cover this). 🤖 Generated with [Claude Code](https://claude.com/claude-code) -- 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]
