JuiceFS v0.13 arrived 1 month after v0.12.1, with more than 80 changes from 9 contributors (@davies, @Sandy4999 , @xiaogaozi, @yuhr123, @polyrabbit, @suzaku, @tangyoupeng, @angristan, @chnliyong), thanks to them.
The biggest feature in v0.13 is using SQL database as meta engine, SQLite, MySQL and TiDB are supported right now, we will add others later. Using SQL database will be slower than using Redis, but they have better persistency and scalability than Redis, is better in the cases that data safety and number of files are more important than performance, for example, backup.
New
- Support SQL database (SQLite, MySQL and TiDB) as meta engine (#375).
- Added
profile
to analyze access log (#344). - Added
status
to show the setting and status (#368). - Added
warmup
to build cache for files/directory (#409). - Build Java SDK for Windows (#362).
- Use multiple buckets as object store (#349).
- Collect metrics for Java SDK (#327).
- Added virtual file
/.stats
to show the internal metrics (#314). - Allow build a minimized binary without S3 gateway and other object storages (#324).
Changed
- Enable checksum for Swift (a16b106).
- Added more buckets for object latency distribution (#321).
- Added a option (--no-agent) to disable debug agent (#328).
- Added internal details at the end of benchmark (#352).
- More metrics for block cache(#387).
- Speed up path resolution for Java SDK and S3 gateway using Lua script (#394).
- Restart the Redis transaction after some known failures (#397).
- Remove the limit on the number of cached blocks (#401).
Bugfix
- Fixed a bug in SetAttr to refresh new written data (429ce80).
- Fixed overflow in StatFS (abcb5c6).
- Fixed a bug when use MinIO with
juicefs sync
(199b4d3). - Fixed a bug in CopyFileRange, which may affect multipart uploads and concat of Java SDK (fb611b0).
- Fixed deadlock when truncate together with read (2f8a8d9).
- Fixed stale read after truncate (226b6a7).
- Fixed downloading a directory using S3 gateway (#378).