Skip to content

Releases: juicedata/juicefs

v1.2.4

14 Jul 06:26
Compare
Choose a tag to compare

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

07 Jul 02:21
Compare
Choose a tag to compare

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

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 and enable-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 and max-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 and end-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 to extend (#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 and total_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...
Read more

v1.3.0-rc1

25 Jun 06:51
Compare
Choose a tag to compare
v1.3.0-rc1 Pre-release
Pre-release

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 and max-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

29 May 10:35
0451f63
Compare
Choose a tag to compare
v1.3.0-beta2 Pre-release
Pre-release

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 and end-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 to extend (#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

22 Apr 11:09
Compare
Choose a tag to compare
v1.3.0-beta1 Pre-release
Pre-release

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

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 and enable-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 and total_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...
Read more

v1.2.3

22 Jan 09:45
4f2aba8
Compare
Choose a tag to compare

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

22 Jan 09:44
9e8b1e3
Compare
Choose a tag to compare

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

02 Dec 07:58
92e1db2
Compare
Choose a tag to compare

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

02 Dec 07:59
766b467
Compare
Choose a tag to compare

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

02 Sep 01:13
Compare
Choose a tag to compare

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)