huaxingao opened a new pull request, #5122: URL: https://github.com/apache/polaris/pull/5122
<!-- ๐ Describe what changes you're proposing, especially breaking or user-facing changes. ๐ See https://github.com/apache/polaris/blob/main/CONTRIBUTING.md for more. --> Follow-up polish to the entity-property idempotency feature: 1. **TTL-scaled key-window cap.** The per-entity live-key window was capped at a hardcoded `MAX_WINDOW_SIZE = 64` regardless of the configured key TTL. The cap now scales linearly from that baseline (64 keys at the 5-minute default TTL, e.g. 128 at 10m, 384 at 30m), floored at 1 and clamped at 1024 so a large TTL can't grow the per-entity property without bound. 2. **Graceful decode.** A corrupt or unrecognized key window (unknown format prefix, invalid base64, or unreadable SMILE) is now treated as "no live keys" instead of throwing. This keeps a malformed property from failing the whole create/update; the next write overwrites it with a valid window (self-healing). 3. **Rename.** Private constant `WINDOW_FORMAT_SMILE_V1` -> `FORMAT_SMILE_V1` (wire value `IS1` unchanged). ## Checklist - [ ] ๐ก๏ธ Don't disclose security issues! (contact [email protected]) - [ ] ๐ Clearly explained why the changes are needed, or linked related issues: Fixes # - [ ] ๐งช Added/updated tests with good coverage, or manually tested (and explained how) - [ ] ๐ก Added comments for complex logic - [ ] ๐งพ Updated `CHANGELOG.md` (if needed) - [ ] ๐ Updated documentation in `site/content/in-dev/unreleased` (if needed) -- 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]
