This release includes 1 breaking change for platform teams planning a safe upgrade.
✓ No known CVEs patched in this version
Topics
+10 more
Affected surfaces
Summary
AI summaryFUSE mount enhancements, filer read pattern detection, S3 API streaming limits, volume server flag removals, and Helm chart validation updates.
Full changelog
What's Changed
-
FUSE
- fix(command): preserve fuse option after writers by @7y-9 in https://github.com/seaweedfs/seaweedfs/pull/9972
- test: add FUSE database load/durability/perf benchmark by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9980
- mount: tolerance-window write pattern detection for concurrent writeback by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9984
- fix(mount): keep a deferred local create from vanishing when its dir is rebuilt by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9991
- fix(mount): pin rebuild entries by their own inode, not inodeToPath by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9993
- mount: fix deadlock reading an uncached remote-mounted file by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9995
- mount: cache supplementary group IDs for non-root access performance by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/10008
- fix(mount): run entry invalidations off the meta-cache apply loop by @kisow in https://github.com/seaweedfs/seaweedfs/pull/10002
- feat(mount): attach Content-MD5 to chunk uploads by @kisow in https://github.com/seaweedfs/seaweedfs/pull/10016
-
Misc
- security.toml: document WEED_ env override for jwt signing keys by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9981
- SECURITY.md: require working repro and trust-boundary impact by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9990
- mq(kafka): don't drop an existing topic when auto-create races by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9998
- Fix typo in SeaweedFS Filer description by @dantetemplar in https://github.com/seaweedfs/seaweedfs/pull/10009
- Logs typos by @m-sementsov in https://github.com/seaweedfs/seaweedfs/pull/10018
- feat: add Prometheus metrics for replication operations by @rushikesh90 in https://github.com/seaweedfs/seaweedfs/pull/10006
- install.sh: fix stale --version example (v3.93 -> 4.34) by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/10025
- feat: add Prometheus metric for volume creation operations by @rushikesh90 in https://github.com/seaweedfs/seaweedfs/pull/10026
- stats: define metric subsystems as constants by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/10027
-
Filer
- filer: tolerance-window read pattern detection for concurrent readahead by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9983
- filer: skip COLLATE "C" list fallback on CockroachDB by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/10015
-
Shell
- shell: show remote storage name/key in volume.list output by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9987
- fix(shell): return fs.verify topology errors by @7y-9 in https://github.com/seaweedfs/seaweedfs/pull/9982
-
Volume Server
- storage: register tier backends at the binary composition root by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9989
- volume: remove ec.bitrotChecksum and ec.bitrotBlockSizeMB flags by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/10000
- volume: validate remote S3 endpoints in FetchAndWriteNeedle (Rust) by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/10001
- volume: detect phantom volumes held open as deleted FDs by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/10011
-
Master
- use Leader() instead of MaybeLeader() in SendHeartbeat by @giftz in https://github.com/seaweedfs/seaweedfs/pull/10029
-
S3 API
- s3: bound streaming remote-cache wait so large cold GetObject returns 503, not a hang by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9988
- s3api: add optional request interceptor to circuit breaker by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/9994
- s3: improve TTFB for large remote objects by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/10010
- fix(s3): verify SigV2 using percent-encoded path for Unicode object keys by @sergey-zinchenko in https://github.com/seaweedfs/seaweedfs/pull/10022
-
Helm Charts
- helm: reject emptyDir for volume idx, and rebuild a missing idx on restart by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/10005
-
Admin Server and Worker
- admin: surface user inline policies in object store user details by @msk-psp in https://github.com/seaweedfs/seaweedfs/pull/10013
-
Mini
- mini: resolve admin credentials from security.toml and env vars by @chrislusf in https://github.com/seaweedfs/seaweedfs/pull/10021
New Contributors
- @dantetemplar made their first contribution in https://github.com/seaweedfs/seaweedfs/pull/10009
- @sergey-zinchenko made their first contribution in https://github.com/seaweedfs/seaweedfs/pull/10022
Full Changelog: https://github.com/seaweedfs/seaweedfs/compare/4.34...4.35
Breaking Changes
- Removed ec.bitrotChecksum and ec.bitrotBlockSizeMB flags from the volume server configuration.
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]