This release adds 5 notable features for engineering teams evaluating rollout.
✓ No known CVEs patched in this version
Topics
+10 more
Affected surfaces
Summary
AI summaryS3 adds quota/mode metrics, owner handling, path validation; Admin server introduces maintenance config, sparklines, Mount Clients page; Volume server fixes EC crash safety, stub cleanup, replication/tiering safeguards; Metrics dashboard overhauled.
Full changelog
What's Changed
-
S3
- s3: export per-bucket quota and read-only state metrics by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9923
- s3: validate copy source path segments by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9929
- [s3] validate indirect filer path inputs by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9931
- [s3]: preserve multipart copy checksums by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9948
- s3: give account-less identities a distinct owner instead of admin by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9962
- s3: give STS sessions a distinct owner account instead of admin by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9963
- s3tables: scope management authorization to the caller's identity by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9961
- s3: register account-less identities' synthesized account so ACL/owner ids resolve by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9971
-
Misc
- fix(tests): 32-bit build of EC e2e tests, type-check linux/386 in CI by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9922
- ci: run weed tests on linux/386 by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9924
- fix(util): ignore comment only sql input by @7y-9 in https://github.com/seaweedfs/seaweedfs/pull/9933
-
Shell
- shell: volume.tier.move can move volumes between data centers by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9925
- shell: stop ec.encode/ec.rebuild from destroying live EC shards (no crash needed) by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9939
-
Admin Server
- admin: configure maintenance tasks via admin.toml by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9926
- admin: native at-a-glance trend sparklines on the dashboard by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9957
- admin: fold dashboard sparklines into the existing cards (de-dup) by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9964
- admin: add connected Mount Clients page and dashboard section by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9968
-
Volume Server
- feat(storage): sweep leftover empty EC .dat stubs on volume server startup by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9927
- fix(storage): never let an empty .dat delete healthy distributed EC shards by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9930
- fix(ec): crash-safe ecx-journal fold and shard rebuild (fsync before publish, no short-read-as-success) by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9938
- fix(ec): never delete recoverable EC shards on startup/reconcile (the non-empty-.dat sibling of the stub bug) by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9941
- [volume] preserve volume data mtime across tier moves by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9947
- fix(replication): verify-before-destroy in VolumeCopy, check.disk, and over-replication trim by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9943
- fix(vacuum): crash-safe compaction commit with a durable .cpc marker, fsync-before-rename, and a reload fence by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9944
- fix(tiering): never delete a shared remote object while replicas still reference it by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9942
- fix(ec): make ec.decode write-path crash-safe and atomic by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9949
- fix(ec): persist EC source readonly mark and skip writable replicas on orphan cleanup by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9950
- [volume] preserve compression state during replication by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9946
- fix(ec): don't fabricate a stub .vif when mounting an EC volume by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9951
- fix(ec): group orphan-source completeness by encode generation (topology encode_ts_ns) by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9952
- fix(ec): fence stale-worker EC shard cleanup by encode generation by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9953
- fix(storage): delete/unmount every copy of a duplicate volume id by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9954
- fix(ec): remove shared EC index only when no shard remains node-wide by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9955
- fix(ec): recover EC shards with the volume's own ratio, not the build default by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9958
- refactor(ec_balance): make the balance planner per-volume ratio-capable by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9960
-
Metrics
- metrics: overhaul Grafana dashboard for full metric coverage by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9956
- metrics: guard time()-based dashboard panels against unset gauges by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9965
- metrics: add per-bucket S3 panels and volume slot utilization to dashboard by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9969
- filer: keep metadata-subscription send gauge fresh on idle heartbeat by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9966
-
Helm Charts
- [helm]: configure JWT expiration by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9940
Full Changelog: https://github.com/seaweedfs/seaweedfs/compare/4.33...4.34
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
About seaweedfs
SeaweedFS is a distributed storage system for object storage (S3), file systems, and Iceberg tables, designed to handle billions of files with O(1) disk access and effortless horizontal scaling.
Related context
Related tools
Earlier breaking changes
- v4.24 Version 4.23 is unsafe with multiple disks when using erasure coding (EC).
Beta — feedback welcome: [email protected]