Releases: juicedata/juicefs
v1.2.4
This is the fourth patch release for JuiceFS v1.2. It has 10 commits from 4 contributors, thanks to @zhijian-pro @polyrabbit @jiefenghuang @chnliyong
Bugfix
- meta: fix stats for trash directories (#6099)
- meta: fix all-zero read response due to invalid openFile.chunks cache (#6192)
- meta/redis: fix potential loss of attributes issue (#5709)
- meta/redis: check
MGet
error to avoid panic (#5773) - meta/sql: fix flush quotas deadlock (#5706)
- meta/sql: fix flush stat deadlock (#5712)
- cmd/warmup: release memory timely to avoid OOM (#5886)
- object: add validation for ciphertext length to prevent panic caused by data corruption (#6107)
- object/jfs: fix file creation logic (#5792)
- build: fix static linking for ARM64 binary (#5612)
v1.3.0
This is the fourth major release of JuiceFS, and is an LTS version as well that will be maintained for 24 months.
Since v1.2.0 it has 696 commits from 60 contributors, thanks to
@zhijian-pro @jiefenghuang @polyrabbit @zhoucheng361 @davies @chenjie4255 @YunhuiChen @tangyoupeng @CodingPoeta @CaitinChen @Xuyuchao-juice @SandyXSD @anysql @xiaogaozi @yuhr123 @zxh326 @kyungwan-nam @Suave @timfeirg @zwwhdls @wenjianhn @winglq @cxljs @dsd2077 @ddrid @daimashusheng @SonglinLife @williamstein @mt5225 @lidaohang @JoyLiuc @Looka149 @YinhaoHu @justforlxz @yetone @wpleonardo @taadis @shenxingwuying @prOOrc @myron369 @menwenjun @hawkli-1994 @bitsark @chnliyong @austinhmh @wzhallright @201341 @servusdei2018 @mrdrivingduck @maxjustus @lianneli @davidzhangbj @sjp00556 @jerrycaimin @aucusaga @solracsf @fuyufjh @veinkr @DASWU @achetronic !
Highlights
- Python SDK (#5437,#5516,#5573,#5779,#5852,#5847,#5853,#5931,#5998...)
- Improved tools and compatibility on Windows (#5376,#5630,#5629,#5643,#5661,#5714,#5724...)
- Speedup backup using protobuf (#5344,#5348,#5352,#5356,#5733,#5379,#5383,#5404...)
- Support Apache Ranger (#5285,#5430,#6016)
New
- fuse: add
--async_dio
option to enable asynchronous handling of direct I/O (#4943,#4986) - fuse: add
--max-fuse-io
option to config max write size for request (#5087,#6017) - fuse: add timeout for FUSE requests (#5670,#5681,#5690)
- fuse: enable kernel symlink cache (#5766)
- fuse: support /dev/fd/N mount point for
--fusemount
(#5076,#5082,#5976) - cmd/mount: add
max-readahead
option to set the max readahead buffer (#5225,#5229,#5704) - cmd/mount: add
--sort-dir
option to sort entries by name within a directory (#5031) - cmd/mount: add
readdir-cache
option to enable kernel caching readdir entries (#5462) - cmd/mount: add
negative-entry-cache
option to allow kernel caching negative dir entry lookups (#5788,#6038) - cmd/mount: add
cache-large-write
option to cache blocks after uploading (#5261) - cmd/mount: add
cache-items
option to limit number of cache items (#5489,#5495) - cmd/mount: add
check-storage
option to perform object storage test at startup (#5281) - cmd/mount: add
enable-cap
andenable-selinux
options to enable corresponding xattr requests (#5406,#5962) - cmd/mount: add
all-squash
option to map all users to a specified one (#5395) - cmd/mount: add
umask
option to overwrite the one from app (#5756,#5942) - cmd/mount: add
disable-transparent-hugepage
option to disable transparent huge page (#6147) - cmd/mount: supervisor process pass signal to service process (#5238,#5245,#5246,#5278,#5624)
- vfs: support
O_TMPFILE
flag (#5309,#5433) - meta: support readdir streaming (#5162,#5207,#5223,#5242,#5482,#5504,#5895)
- meta: add
fast-statfs
option to speed up statfs (#6168,#6171) - meta/tikv: support
open-tso-follower-proxy
andmax-tso-batch-wait-interval
options (#6166) - meta/sql: support multiple volumes sharing a single db (#5791,#5804)
- cache: add env
JFS_DROP_OSCACHE
to enable dropping page cache (#4981) - cmd/format: support TLS configuration via bucket URL parameters (#5241)
- cmd/sync: add
max-failure
option to abort on error threshold (#5142) - cmd/sync: add
start-time
andend-time
options to filter file (#6072,#6121) - cmd/sync: add
check-change
option to verify file size (#6093) - cmd/quota: add
--create
option to create directory if not exists (#5196) - cmd/rmr: add
skip-trash
option to delete files directly (#5384,#5818) - cmd: add
threads
option for rmr tool, webdav, gateway and libjfs to delete files (#5522,#5535) - cmd/gateway: add
object-meta
option to enable object metadata api (#5536) - cmd/sync: add
files-from
option to specify the list of files or directories to sync (#5639,#5864,#5894) - cmd/objbench: add
shards
to support object storage shards (#5755) - cmd/dump&load: support zstd compression (#4921)
- cmd/webdav: support PROPPATCH method (#5041)
- sdk/hadoop: support subdir option in hadoop sdk (#6097,#6141)
Changed
- vfs: limit buffer usage for read requests (#5557)
- meta: improve statfs performance (#5161)
- meta/kv: improve mknod performance via batch get (#5056)
- meta: improve performance via inode prefetching. (#5130,#5481)
- meta: reduce
GetAttr
calls (#5540) - meta: optimizations for reducing transaction conflicts (#5308,#5330,#5574)
- meta: adjust the interval to one hour for deleted files cleanup (#5343)
- meta: cancel background tasks when closing session (#5486,#5613,#5943,#5986,#6108,#6060)
- meta/kv: improve scan performance and robustness (#5298,#5314,#5080)
- meta/kv: simplify transactions in point get scenarios to reduce one RPC call for TiKV (#6136,#6150)
- meta/sql: improve performance by simplifying transaction and reducing locks (#5377,#5460)
- meta/sql: set default transaction isolation level to repeatable-read (#5432,#5456)
- meta/sql: support more connection options (#5512,#5806)
- meta/sql: improve compatibility by updating exact required fields (#6153,#6158)
- meta/redis: support tls server name configuration (#5182)
- cache: inherit atime and track logic size when re-scan (#5692)
- cache: adjust cache capacity and max items by freeratio (#5970)
- cache: change the default value of
verify-cache-checksum
option toextend
(#6103) - cmd: exit compact timely and log a message when long-running background tasks start (#6033)
- cmd: refuse more than expected positional arguments (#6154)
- cmd/mount: the
upload-hours
option allow using-
as a separator (#5494) - cmd/mount: set the process as an
IO_FLUSHER
to avoid potential hang (#6144,#6157) - cmd/gateway: add one more hierarchy to temporary multipart dir to reduce transaction conflicts (#5549)
- cmd/gateway: improve the gateway performance in read-only mode (#6187)
- cmd/gateway: some performance optimizations (#5163,#5548,#5544)
- cmd/gateway: delete intermediate temporary files promptly to reduce inode usage (#6080)
- cmd/gateway: implement ListObjectVersions (#6173)
- cmd/sync: support more environment variables in cluster mode (#5364,#5422)
- cmd/sync: improve performance by calculating checksum in flight to reduce redundant reads from the source (#5524)
- cmd/warmup: accelerate big file warmup (#5713,#5886,#5897)
- cmd/warmup: improve performance by reducing file operations (#5408)
- cmd/warmup: show cache location info (#5559)
- cmd/info: add column for absolute file offset (#6037)
- cmd/fsck: support recalculating used space and inodes (#5331,#6036)
- cmd/restore: output restored dirs and stats (#5380)
- cmd/gc: use
MaxDeletes
as remove concurrency (#5532) - cmd/gc: improve scanning performance for pending-deletion files (#5683)
- cmd/backup: use multipart upload to transfer large backup files (#5564)
- cmd/stats: add timestamp info and
count
option (#5528) - cmd/debug: collect more detailed information about goroutines (#5656)
- object: upgrade aws sdk to v2 (#5968,#5987,#5992)
- object: remove object storage support for scs, jss, upyun (#5972, #5975, #5974)
- object: improve list performance via v2 API (#5250,#5393,#5434)
- object: display full address of s3 compatible object storage in log (#6151)
- object: disable s3 sdk retries since JuiceFS has retry mechanism (#5644,#6113)
- object/gs: improve gs performance by using client pool (#5020)
- object/nfs: improve
Readdir
performance by increasing batch size (#5689) - object/minio: support
REDUCED_REDUNDANCY
storage class for MinIO (#5413) - object/sftp: supports verification of known hosts (#5581)
- object/bos: reduce memory allocation in bos (#5657)
- object/bos: support crc32 check (#5883)
- object/oss: support parsing regionId from environment variable and from VPC-type endpoint (#6202)
- hadoop: support skipNBytes (#5028)
- metrics: update grafana dashboard (#4980,#5248)
- metrics: add method label for transaction conflicts (#5762)
- metrics: add
total_inodes
andtotal_space
metrics (#5424) - metrics: expand the FUSE latency histogram range (#6199)
Bugfix
- vfs: remove object files if metadata commit fails with ENOENT (#5133)
- vfs: allow
ftruncate
on an opened and deleted file (#5664) - meta: fix the issue that trash files may be dangling (#5414)
- meta: evict symlink cache periodically (#5131)
- meta: fix permission check of open and mknod (#4948)
- meta: fix volume stats update issues (#4979,#5221,#5272,#5280,#5303,#5305)
- meta: fix the issue that the username cannot contain the "@" character (#5761)
- meta: fix potential issues with context reuse (#5372,#5665)
- meta: exit
doCleanupSlices
timely (#6081) - meta: check for incorrect filenames (#6073)
- meta: fix stats for trash directories (#6099)
- meta: fix all-zero read response due to invalid openFile.chunks cache (#6192)
- meta: fix leaking objects when quota is full (#6200)
- meta/kv: return EINVAL for empty xattr value when using TiKV (#6104)
- meta/sql: fix nanosecond of link and readlink (#5496)
- meta/sql: fix sqlite3 "database is locked" issue (#5586)
- meta/sql: fix flush quotas and stats deadlock (#5706,#5712)
- meta/sql: fix database retry issues (#5440,#5485)
- meta/sql: fix concurrency issue in json backup dump (#5930)
- meta/redis: fix potential loss of attributes issue (#5709)
- meta/redis: check
MGet
error to avoid panic (#5773) - meta/redis: fix parsing options for redis cluster (#6129)
- chunk: remove unexpected read retries (#5199)
- chunk: deduplicate prefetch/partial-block/full-block requests to avoid read amplification (#4947,#5219)
- cache/stage: retry uploading stage blocks upon disk read failures (#5084)
- cache/stage: add stage write timeout with object storage fallback to prevent hangs (#5230,#5563,#5575)
- cache: disable writeback during compaction to prevent EIO from multi-client races (#5767)
- cache: maintain a margin based on the free-space ratio during cleanup to prevent client interference (#52...
v1.3.0-rc1
This is the first release candidate for JuiceFS v1.3. Since v1.3-beta2 it has 27 commits from 14 contributors, thanks to @zhijian-pro @polyrabbit @tangyoupeng @jiefenghuang @lidaohang @Xuyuchao-juice @SonglinLife @YunhuiChen @mt5225 @sjp00556 @wenjianhn @jinying-liu @veinkr @davies !
New
- meta/tikv: support
open-tso-follower-proxy
andmax-tso-batch-wait-interval
options (#6166) - meta: add
fast-statfs
option to speed up statfs (#6168,#6171)
Changed
- cmd/gateway: implement ListObjectVersions (#6173)
- cmd/gateway: improve the gateway performance in read-only mode (#6187)
- object/oss: support parsing regionId from environment variable and from VPC-type endpoint (#6202)
- metrics: expand the FUSE latency histogram range (#6199)
Bugfix
- meta: fix all-zero read response due to invalid openFile.chunks cache (#6192)
- meta: fix leaking objects when quota is full (#6200)
- cache: fix sleep duration in cache expiration loop (#6165)
- object: improve error handling for directory creation and deletion (#6176)
- object/tos: fix wrong region of TOS (#6191)
- cmd/load: fix sliceref for sql binary backup (#6188)
- cmd/sync: fix progress bar for file list (#6162)
- cmd/objbench: correct the time calculation (#6201)
- hadoop: remove ranger-rest-url in core-site (#6203)
v1.3.0-beta2
This is the second beta release for JuiceFS v1.3. Since beta1 it has 74 commits from 21 contributors, thanks to
@zhijian-pro @polyrabbit @YunhuiChen @zxh326 @jiefenghuang @davies @chenjie4255 @tangyoupeng @kyungwan-nam @wenjianhn @yuhr123 @anysql @CodingPoeta @xiaogaozi @zhoucheng361 @mrdrivingduck @jerrycaimin @fukua95 @Xuyuchao-juice @fuyufjh @justforlxz !
New
- cmd/mount: add
disable-transparent-hugepage
option to disable transparent huge page (#6147) - cmd/sync: add
start-time
andend-time
options to filter file (#6072,#6121) - cmd/sync: add
check-change
option to verify file size (#6093) - sdk/hadoop: support subdir option in hadoop sdk (#6097,#6141)
Changed
- meta: cancel stat routine when closing session (#6108)
- meta/tikv: simplify transactions in point get scenarios to reduce one RPC call (#6136,#6150)
- meta/sql: improve compatibility by updating exact required fields (#6153,#6158)
- cache: change the default value of
verify-cache-checksum
option toextend
(#6103) - object: display full address of s3 compatible object storage in log (#6151)
- cmd: exit compact timely and log a message when long-running background tasks start (#6033)
- cmd: refuse more than expected positional arguments (#6154)
- cmd/mount: set the process as an IO_FLUSHER to avoid potential hang (#6144,#6157)
- cmd/info: add column for absolute file offset (#6037)
- cmd/load: fix loading encrypted or compressed backup files (#6070)
- cmd/gateway: delete intermediate temporary files promptly to reduce inode usage (#6080)
- sdk/python: support encoded read/write (#6106)
- sdk/python: support reading .config and .stats (#6118)
- plat/windows: add attr, entry and dentry cache (#6053)
- plat/windows: disable symlink by default (#6021)
Bugfix
- meta: fix delete slice (#6060)
- meta: exit
doCleanupSlices
timely (#6081) - meta: check for incorrect filenames (#6073)
- meta: fix stats for trash directories (#6099)
- meta/kv: return EINVAL for empty xattr value when using TiKV (#6104)
- meta/redis: fix parsing options for redis cluster (#6129)
- object: fix burst bandwidth (#6102)
- object: fix the issue where modifying mtime also changes atime (#6026)
- object: fix sha256 checksum in s3 is added again (#6100)
- object: add validation for ciphertext length to prevent panic caused by data corruption in object storage (#6107)
- object: disable s3 sdk retries since JuiceFS has retry mechanism (#6113)
- object: fix error handling in HEAD (#6120)
- object: fix object mtime issue (#6127)
- object/sftp: fix connection reuse issue (#6123)
- cmd/warmup: prevent division by zero when checking for empty files or directories (#6074)
- cmd/fsck: fix the missing trash files statistics in volume stat (#6105)
- cmd/sync: fix command-line interaction issue for rsync (#6115)
- cmd/sync: fix copied counter (#6114)
- cmd/sync: fix mtime comparison for check-change (#6134)
- sdk/python: fix reused client (#6094)
- plat/windows: fix symbol link cannot be deleted (#6079)
v1.3.0-beta1
This is the first beta release for JuiceFS v1.3. Since v1.2 it has 556 commits from 49 contributors, thanks to
@zhijian-pro @jiefenghuang @polyrabbit @chenjie4255 @davies @YunhuiChen @CaitinChen @CodingPoeta @Xuyuchao-juice @tangyoupeng @SandyXSD @anysql @xiaogaozi @yuhr123 @Suave @timfeirg @kyungwan-nam @zxh326 @winglq @williamstein @zwwhdls @JoyLiuc @Looka149 @dsd2077 @ddrid @daimashusheng @wzhallright @yetone @wpleonardo @201341 @taadis @shenxingwuying @mt5225 @prOOrc @servusdei2018 @myron369 @maxjustus @lianneli @davidzhangbj @hawkli-1994 @YinhaoHu @bitsark @solracsf @fukua95 @DASWU @SonglinLife @chnliyong @achetronic !
Highlights
- Python SDK (#5437,#5516,#5573,#5779,#5852,#5847,#5853,#5931,#5998...)
- Improved tools and compatibility on Windows (#5376,#5630,#5629,#5643,#5661,#5714,#5724...)
- Speedup backup using protobuf (#5344,#5348,#5352,#5356,#5733,#5379,#5383,#5404...)
- Support Apache Ranger (#5285,#5430,#6016)
New
- fuse: add
--async_dio
option to enable asynchronous handling of direct I/O (#4943,#4986) - fuse: add
--max-fuse-io
option to config max write size for request (#5087,#6017) - fuse: add timeout for FUSE requests (#5670,#5681,#5690)
- fuse: enable kernel symlink cache (#5766)
- fuse: support /dev/fd/N mount point for
--fusemount
(#5076,#5082,#5976) - cmd/mount: add
max-readahead
option to set the max readahead buffer (#5225,#5229,#5704) - cmd/mount: add
--sort-dir
option to sort entries by name within a directory (#5031) - cmd/mount: add
readdir-cache
option to enable kernel caching readdir entries (#5462) - cmd/mount: add
negative-entry-cache
option to allow kernel caching negative dir entry lookups (#5788,#6038) - cmd/mount: add
cache-large-write
option to cache blocks after uploading (#5261) - cmd/mount: add
cache-items
option to limit number of cache items (#5489,#5495) - cmd/mount: add
check-storage
option to perform object storage test at startup (#5281) - cmd/mount: add
enable-cap
andenable-selinux
options to enable corresponding xattr requests (#5406,#5962) - cmd/mount: add
all-squash
option to map all users to a specified one (#5395) - cmd/mount: add
umask
option to overwrite the one from app (#5756,#5942) - cmd/mount: supervisor process pass signal to service process (#5238,#5245,#5246,#5278,#5624)
- vfs: support
O_TMPFILE
flag (#5309,#5433) - meta: support readdir streaming (#5162,#5207,#5223,#5242,#5482,#5504,#5895)
- meta/sql: support multiple volumes sharing a single db (#5791,#5804)
- cache: add env
JFS_DROP_OSCACHE
to enable dropping page cache (#4981) - cmd/format: support TLS configuration via bucket URL parameters (#5241)
- cmd/sync: add
max-failure
option to abort on error threshold (#5142) - cmd/quota: add
--create
option to create directory if not exists (#5196) - cmd/rmr: add
skip-trash
option to delete files directly (#5384,#5818) - cmd: add
threads
option for rmr tool, webdav, gateway and libjfs to delete files (#5522,#5535) - cmd/gateway: add
object-meta
option to enable object metadata api (#5536) - cmd/sync: add
files-from
option to specify the list of files or directories to sync (#5639,#5864,#5894) - cmd/objbench: add
shards
to support object storage shards (#5755) - cmd/dump&load: support zstd compression (#4921)
- cmd/webdav: support PROPPATCH method (#5041)
Changed
- vfs: limit buffer usage for read requests (#5557)
- meta: improve statfs performance (#5161)
- meta/kv: improve mknod performance via batch get (#5056)
- meta: improve performance via inode prefetching. (#5130,#5481)
- meta: reduce
GetAttr
calls (#5540) - meta/kv: improve scan performance and robustness (#5298,#5314,#5080)
- meta/sql: improve performance by simplifying transaction and reducing locks (#5377,#5460)
- meta/sql: set default transaction isolation level to repeatable-read (#5432,#5456)
- meta: optimizations for reducing transaction conflicts (#5308,#5330,#5574)
- meta/sql: support more connection options (#5512,#5806)
- meta/redis: support tls server name configuration (#5182)
- meta: adjust the interval to one hour for deleted files cleanup (#5343)
- meta: cancel background tasks when closing session (#5486,#5613,#5943,#5986)
- cache: inherit atime and track logic size when re-scan (#5692)
- cache: adjust cache capacity and max items by freeratio (#5970)
- cmd/mount: the
upload-hours
option allow using-
as a separator (#5494) - object: upgrade aws sdk to v2 (#5968,#5987,#5992)
- object: remove object storage support for scs, jss, upyun (#5972, #5975, #5974)
- object: improve list performance via v2 API (#5250,#5393,#5434)
- object/gs: improve gs performance by using client pool (#5020)
- object/nfs: improve
Readdir
performance by increasing batch size (#5689) - object/minio: support
REDUCED_REDUNDANCY
storage class for MinIO (#5413) - object/sftp: supports verification of known hosts (#5581)
- object/bos: reduce memory allocation in bos (#5657)
- object/bos: support crc32 check (#5883)
- hadoop: support skipNBytes (#5028)
- cmd/gateway: add one more hierarchy to temporary multipart dir to reduce transaction conflicts (#5549)
- cmd/gateway: some performance optimizations (#5163,#5548,#5544)
- cmd/sync: support more environment variables in cluster mode (#5364,#5422)
- cmd/sync: improve performance by calculating checksum in flight to reduce redundant reads from the source (#5524)
- cmd/warmup: accelerate big file warmup (#5713,#5886,#5897)
- cmd/warmup: improve performance by reducing file operations (#5408)
- cmd/warmup: show cache location info (#5559)
- cmd/fsck: support recalculating used space and inodes (#5331,#6036)
- cmd/restore: output restored dirs and stats (#5380)
- cmd/gc: use
MaxDeletes
as remove concurrency (#5532) - cmd/backup: use multipart upload to transfer large backup files (#5564)
- cmd/stats: add timestamp info and
count
option (#5528) - cmd/debug: collect more detailed information about goroutines (#5656)
- cmd/gc: improve scanning performance for pending-deletion files (#5683)
- metrics: update grafana dashboard (#4980,#5248)
- metrics: add method label for transaction conflicts (#5762)
- metrics: add
total_inodes
andtotal_space
metrics (#5424)
Bugfix
- vfs: remove object files if metadata commit fails with ENOENT (#5133)
- vfs: allow
ftruncate
on an opened and deleted file (#5664) - meta: fix the issue that trash files may be dangling (#5414)
- meta: evict symlink cache periodically (#5131)
- meta: fix permission check of open and mknod (#4948)
- meta: fix volume stats update issues (#4979,#5221,#5272,#5280,#5303,#5305)
- meta: fix the issue that the username cannot contain the "@" character (#5761)
- meta: fix potential issues with context reuse (#5372,#5665)
- meta/sql: fix nanosecond of link and readlink (#5496)
- meta/sql: fix sqlite3 "database is locked" issue (#5586)
- meta/sql: fix flush quotas and stats deadlock (#5706,#5712)
- meta/sql: fix database retry issues (#5440,#5485)
- meta/sql: fix concurrency issue in json backup dump (#5930)
- meta/redis: fix potential loss of attributes issue (#5709)
- meta/redis: check
MGet
error to avoid panic (#5773) - chunk: remove unexpected read retries (#5199)
- chunk: deduplicate prefetch/partial-block/full-block requests to avoid read amplification (#4947,#5219)
- cache/stage: retry uploading stage blocks upon disk read failures (#5084)
- cache/stage: add stage write timeout with object storage fallback to prevent hangs (#5230,#5563,#5575)
- cache: disable writeback during compaction to prevent EIO from multi-client races (#5767)
- cache: maintain a margin based on the free-space ratio during cleanup to prevent client interference (#5216)
- cache: fix inoperative
--cache-expire
option in memory cache (#5313) - cache: fix cache duplication issue caused by concurrency (#5623)
- cache: fix potential high latency caused by locks in
getDiskUsage
(#5857) - cmd/mount: fix process management issues (#5064,#5172,#5641,#5881)
- cmd/mount: fix potential hangs during stack trace collection by adding timeout (#5325)
- cmd/mount: support using ":" to separate multiple
cache-dir
in fstab (#5719) - cmd/mount: fix the mount path to an absolute path in fstab (#5951)
- cmd/debug: fix potential hangs by adding timeout (#5050,#5627)
- cmd/sync: fix command-line interaction issues (#5138,#5744,#5752)
- cmd/sync: fix parallel list issues (#5645,#5646)
- cmd/sync: fix statistical issues (#5658,#5763)
- cmd/sync: fix manager ip issues (#5597,#5950,#5947)
- cmd/sync: ignore special files of JuiceFS (#5523)
- cmd/sync: fix leaked directories issue (#5705,#5777,#5787)
- cmd/sync: fix missing error log for worker process (#5362)
- cmd/sync: use a dedicated buffer pool to avoid contention with writes (#5568)
- cmd/sync: fix the issue that worker might get an outdated binary. (#5899)
- cmd/sync: fix check-all in cluster mode (#5904)
- cmd/sync: fix uneven task distribution among workers. (#5957)
- cmd/sync: return error if uid or gid cannot be found (#5995)
- cmd/gateway: fix missing memory buffer usage metrics (#5560)
- cmd/gateway: fix potential etag inconsistency caused by concurrency (#5258,#5378)
- cmd/gateway: fix some compatibility issues (#6004,#6006)
- cmd/gateway: fix some panic issues (#5098, #5164,#5807)
- cmd/clone: skip trash files (#5109)
- cmd/gc: fix misclassification of pending-delete objects as leaked (#5198)
- cmd/config: fix bucket update issue (#5653)
- cmd/objbench: fix time and size statistics (#5264,#5267)
- cmd/warmup: fix handling files with holes (#6034)
- object/ks3: check endpoint format to avoid panic (#5074)
- object/s3: fix long timeout issue when AWS IMDSv2 is disabled (#5231)
- object/bos: disable retry in bos (#5644)
- object/jfs: fix file creation logic (#5792)
- hadoop: fix juicefs.umask does not work (#5337)
- hadoop: fix background task thread leak (#5363)
- ha...
v1.2.3
This is the third patch release for JuiceFS v1.2. It has 9 commits from 7 contributors, thanks to @davies @zhijian-pro @jiefenghuang @CodingPoeta @tangyoupeng @polyrabbit @YinhaoHu!
Bugfix
- mount: fix writeback_cache not working (#5369)
- cache: upload stage on link error to avoid read error (#5467)
- meta/kv: fix stat when unlinking an open file (#5488)
- meta/redis: remove unnecessary watch in doGetAttr and doGetFacl (#5518)
- fuse: fix copied bytes overflow for copy_file_range (#5565)
- cmd/sync: fix check-all in cluster mode (#5525)
- cmd/sync: fix memory allocation that could cause stalls (#5497)
- object/hdfs: retry close if ErrReplica is returned (#5342)
- object/gluster: use OpenDir for directories to avoid segmentation faults (#5345)
v1.1.6
This is the sixth patch release for JuiceFS v1.1. It has 6 commits from 5 contributors, thanks to @davies @jiefenghuang @tangyoupeng @polyrabbit @YinhaoHu!
Bugfix
- cache: upload stage on link error to avoid read error (#5467)
- meta/kv: fix stat when unlinking an open file (#5488)
- fuse: fix copied bytes overflow (#5565)
- cmd/sync: fix check-all in cluster mode (#5525)
- cmd/sync: fix memory allocation that could cause stalls (#5497)
- object/hdfs: retry close if ErrReplica is returned (#5342)
v1.2.2
This is the second patch release for JuiceFS v1.2. It has 16 commits from 6 contributors, thanks to @zhijian-pro @jiefenghuang @polyrabbit @SandyXSD @tangyoupeng @austinhmh!
Changed
- build/go: support build with go1.23 (#5108)
- object/bos: support virtual-hosted-style endpoint (#5302)
Bugfix
- cmd/mount: fix windows IO error (#5126)
- cmd/sync: fix symlink copy by omitting permission copy (#5175)
- cmd/sync: fix multipart upload for various object stores (#5236, #5239)
- cmd/gc: fix delayed slices never deleted (#5189)
- cmd/gc: fix hash-prefixed keys never compacted (#5277)
- cmd/warmup: fix batch reset issue (#5295)
- cmd/gateway: fix content type to avoid NullPointerException in S3 Java SDK (#5275)
- cache: fix logging to avoid initialization errors and enhance clarity (#5191, #5200)
- meta: fix compaction skipping the first slice when duplicated (#5159)
- vfs: fix set xattr compatibility issue on macOS (#5197, #5329)
- hadoop: fix compatibility with Flink 1.7 (#5147)
v1.1.5
This is the fifth patch release for JuiceFS v1.1. It has 12 commits from 5 contributors, thanks to @zhijian-pro @polyrabbit @SandyXSD @tangyoupeng @austinhmh!
Changed
- object/bos: support virtual-hosted-style endpoint (#5302)
Bugfix
- cmd/sync: fix symlink copy by omitting permission copy (#5175)
- cmd/sync: fix multipart upload for various object stores (#5236, #5239)
- cmd/gc: fix delayed slices never deleted (#5189)
- cmd/gc: fix hash-prefixed keys never compacted (#5277)
- cmd/warmup: fix batch reset issue (#5295)
- cmd/gateway: fix content type to avoid NullPointerException in S3 Java SDK (#5275)
- meta: fix compaction skipping the first slice when duplicated (#5159)
- vfs: fix set xattr compatibility issue on macOS (#5197, #5329)
- hadoop: fix compatibility with Flink 1.7 (#5147)
v1.2.1
This is the first patch release for JuiceFS v1.2. It has 14 commits from 6 contributors, thanks to @zhijian-pro @jiefenghuang @SandyXSD @menwenjun @zwwhdls @tangyoupeng !
Changed
- cmd/mount: get FUSE fd from CSI when required (#4991)
Bugfix
- cmd/mount: fix running on windows (#5042)
- cmd/warmup: fix the issue that
evict
sub command may remove staging blocks incorrectly (#5095) - cmd/gc: fix the issue that objects may be deleted by mistake in large systems (#5068)
- cmd/gateway: skip initiating system bucket when metadata is read only (#4992)
- cmd/gateway: improve the performance of ListObjects (#4969, #5013)
- cmd/sync: fix the bandwidth limit when doing streaming copy (#5046)
- cmd/sync: fix concurrent error handling in multipart copy operation (#5044)
- cmd/debug: fix the arguments of
ps
command on macOS (#5022) - meta: fix the issue that hardlink's quota update in the same directory may be incorrect (#5069)
- meta: fix the issue that quota may be updated twice when unlink/rename opened files (#5043)
- chunk: fix file matching regular expressions for staging blocks (#5083)
- hadoop: fix libjfs singleton (#5003)