gitPratikSingh commented on PR #29656: URL: https://github.com/apache/camel/pull/29656#issuecomment-6809244972
Thanks for the detailed review. I have pushed a follow-up commit addressing the points: 1. **startAfter** — the continuation token now takes precedence; the configured `startAfter` is only used when there is no token, so it marks where each pass through the bucket begins. Added a regression test with `startAfter` set and `deleteAfterRead=false`: 25 objects after the start point with a limit of 10 are consumed in polls of [10, 10, 5] instead of the first page repeating. 2. **The extra list request** — the `hasNext()` probe at the cap is gone. At the limit the listing counts as not ended and the token is kept; when a pass ends exactly on a full page, the next poll lists nothing and clears the token. (This is the same point as the bot's note above — as you said, the iterator exposes no `isTruncated` equivalent.) 3. **Token with folders** — the token is now the largest object name listed in the page, so a page ending on a folder prefix cannot re-list objects already routed from that page. 4. **Cleanup** — `listedObjects` and the unreachable branch are removed; the listing state is now just "ended" (token cleared) versus "not ended" (token kept). The failed-listing behaviour is unchanged: the previous token stays in place. 5. **includeVersions** — added a comment where the token is applied, noting the remaining versions of an object split by a page boundary are picked up on the next pass. The upgrade-guide entry now also says that `startAfter` marks where each pass through the bucket begins. -- 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]
