-
v0.3.13 Stable
released this
2026-07-28 15:18:46 +00:00 | 12 commits to trunk since this release- Sort ILM filter tag keys so the lifecycle document stops churning.
buildILMFilter's<And>branch built an ordered[]lifecycle.Tagby rangingspec.filter.tags, amap[string]string— and Go randomizes map iteration, so the<And><Tag>children came out in a different order on nearly every call. The ILM apply path has no drift-skip gate (unlikeMinioServiceAccount, which short-circuits onStatus.AppliedPolicyHash), so it callsSetBucketLifecycleunconditionally on every reconcile including the 5-minute resync: a multi-tag filter therefore PUT a different XML document to MinIO every pass and emitted a spuriousUpdatedevent claiming a change that never happened — endlessly, with zero spec edits. Keys are now sorted before the slice is built (matching the existingbuildOpenIDKVdiscipline). Regression tests (F97) pin both the built slice and the marshaled wire bytes as byte-identical across 100 builds.
Included changes (v0.3.12 -> v0.3.13)
3f7175c24dcafix(ilm): sort filter tag keys so the lifecycle document stops churning
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
- Sort ILM filter tag keys so the lifecycle document stops churning.