v1.4.0-beta2
electroplix/Design-Systemv1.4.0-beta2May 29, 2026by jiefenghuang
AI Summary
The second beta for v1.4.0, featuring checkpoint support for multipart uploads, performance optimizations in metadata and cache layers, and fixes for panics and SDK compatibility issues.
Key Highlights
- Checkpoint support for multipart uploads
- Optimize Redis invalidation to avoid full entry-cache traversal
- Fix panic in doLookup when attr is nil
- Fix Windows SDK exports for DLL symbols
New Features
- Multipart upload checkpoint support
Full Release Notes
This is the second beta release for JuiceFS v1.4. Since beta1 it has 60 commits from 13 contributors, thanks to @zxh326 @Xuyuchao-juice @jiefenghuang @Niennienzz @solracsf @CaitinChen @timfeirg @YunhuiChen @davies @chenjie4255 @polyrabbit @qingketsing @zhijian-pro ## New - sync: checkpoint support multipart uploads (#7046,#7076,#7071) ## Changed - meta: commit new chunks in write order (#7016) - meta/tkv: do lookup in a single transaction (#7039) - meta/tkv: optimize tikv changelog id (#7023) - meta/tkv: change changelog and kerberos token prefix (#7029) - meta/redis: optimize invalidation to avoid full entry-cache traversal (#7015,#7021) - meta/sql: batch chunk_ref updates to reduce SQL round-trips (#7018) - chunk: scale prefetcher pending buffer with worker count (#7059) - cache: use concurrency only for initial cache scanning (#6994) - fs: add permission check for BatchDeleteEntries (#7083) - fuse: return immediately if readdir failed in ReadDirPlus (#7062) - cmd: refactor parameters related to tier storage (#7074) - cmd/mount: improve mount process kill and diagnostics (#6998, #7034) - cmd/mount: check explicit cancel before duration (#7061) - cmd/gateway: use lookup instead of stat when deleting in batches (#7078) - cmd/gc: allow listed objects without size and mtime (#7063) ## Bug Fixes - meta/tkv: fix panic in doLookup when attr is nil (#7047) - meta: fix user/group quota for sustained nodes (#6991) - meta/quota: restore the strict option for setting quota (#7011) - meta: add mutex to doFlushQuotas to prevent concurrent execution (#7080) - cache/stage: fix free stage blocks when disk full (#7056) - cmd/sync: keep files-from symlink dirs as links (#7050) - cmd/gateway: fix infinite loop in config handling (#7037) - cmd/gateway: prevent panic on invalid uploadID (#7051) - cmd/gateway: head file/ should always fail (#7064) - sdk/windows: fix export jfs_set_callback and jfs_callback symbols in Windows DLL (#6976) - sdk/windows: fixed ldap_msgfree & ldap_first_entry names (#7033) - sdk/java: fix flags when reload (#7082) - sdk/python: fix tests folder being packaged (#7067) - sdk: fix accesslog dead loop (#7065) - log: fix log in SelfCheck bandwidth warning (#7057) - log: fix typo 'boudary' in WriteAt error message (#7058) ## Deps - build: reduce size of lite version (#7017) - deps: upgrade `storj/uplink` to v1.14.2 (#6996,#7081)