Skip to content

v0.1.0

Latest

Choose a tag to compare

@github-actions github-actions released this 22 Sep 09:27
· 33 commits to main since this release

Binary Downloads

Rocky Linux 9

  • x86_64: Download the .tar.gz file from the assets below

Installation

  1. Download the binary package
  2. Extract: tar -xzf curvine-*.tar.gz
  3. Follow the quick start to deploy

What's Changed

🎉 New Features

  • [#2] Add python api by @bigbigxu in #17
  • [#9] add du,stat,rm,count command by @lzjqsdd in #18
  • [#10] [curvine-cli] add node command by @lzjqsdd in #26
  • [#3] add curvine csi driver by @lzjqsdd in #38
  • feat: Add gcs and azblob support by OpenDAL by @Xuanwo in #70
  • [curvine-fuse] support setxattr (#37) by @lzjqsdd in #72
  • acl permission implementation, add set_attr interface by @bigbigxu in #73
  • feat: add python api (#2) by @bigbigxu in #90
  • feat: fuse support setattr (#37) by @lzjqsdd in #95
  • feat: java sdk support jdk21 by @cxzl25 in #100
  • feat: fully support delete by @zuston in #104
  • feat: support symbolic links (#92) by @bigbigxu in #109
  • feat: use the rust command-line tool by default (#108) by @bigbigxu in #112
  • feat: add access permission check (#37) by @lzjqsdd in #135
  • feat: add mount query interface configure (#132) by @bigbigxu in #142
  • feat: add more options on mount by @zuston in #172
  • feat: add a cleanup mechanism for expired inodes (#41) by @jlon in #175
  • feat: fuse support symlink and readlink(#37) by @lzjqsdd in #181
  • feat: cv ls command suppport more options include recursive,reverse a… by @lzjqsdd in #189
  • feat: support additional parameters when mounting fuse by @jlon in #191
  • feat: add curvine-csi deploy and example by @lzjqsdd in #193
  • feat: Add helm chart for curvine-csi by @huchenchen1991 in #196
  • feat: respect client_conf's mount options by @zuston in #197
  • feat: update curvine-csi to support custom mounting fuse parameters by @jlon in #200
  • feat: mount code optimization, new mount types and mount parameters by @bigbigxu in #202
  • refactor: ufs add features, select the ufs to use as needed by @bigbigxu in #216
  • feat(1/N): add support of block replication by @zuston in #218
  • feat(2/N): add option to toggle replication by @zuston in #220
  • feat(3/N): optimize replication test cases by @zuston in #221
  • feat(4/N): add some options for replication by @zuston in #226
  • feat: data loading module code optimization (#227) by @bigbigxu in #228
  • feat: implements s3-compatible api gateway for curvine by @jlon in #234
  • feat: added client metrics timing reporting mechanism (#229) by @bigbigxu in #236
  • feat: cli Add mv command by @201341 in #246
  • feat: add comprehensive credential management system for S3 Gateway by @jlon in #248
  • feat: add hardlink and refactor file overwrite by @lzjqsdd in #259
  • feat: optimize hardlink variable name and stat cmd msg by @szbr9486 in #263
  • feat: added support for falling back to ufs when reading curvine data fails by @bigbigxu in #266
  • feat: add s3a transparent proxy (#276) by @bigbigxu in #285
  • feat: add hostname validation for master by @jlon in #291
  • feat: integrated fluid thin-runtime by @jlon in #292

🐛 Bug Fixes

  • [#11] fix curvine launch script on ubuntu by @lzjqsdd in #14
  • fix curvine local cluster start by @lzjqsdd in #39
  • [#59] fix: match for destructuring a single pattern to make clippy happy by @zuston in #60
  • [#64] fix: Fast return in different fuse2/3 features by @zuston in #65
  • fix curvine-cli report inode/block error by @201341 in #69
  • fix: listxattr return empty to avoid EIO (#79) by @201341 in #76
  • fix: curvine fuse auto unmount when fuse process exit (#74) by @lzjqsdd in #89
  • fix: exit on journal writing failure by @zuston in #93
  • fix: unsupported msg typo by @cxzl25 in #91
  • fix: avoid panic without any bench params by @zuston in #94
  • fix: build with macos by @cxzl25 in #96
  • fix: place the logic of remove blocks operation in master_filesystem by @zuston in #105
  • fix compile warn by @201341 in #110
  • fix: clippy and build mode is not consistent (#122) by @lzjqsdd in #128
  • fix: enable ufs mount bucket directly(#152) by @201341 in #151
  • fix: ufs access time error by @201341 in #156
  • fix: renaming cached file if ufs renaming by @zuston in #154
  • fix: remove credential of cicd compile images by @lzjqsdd in #164
  • fix: Add Master readiness check in mini-cluster to prevent startup race conditions in test environment by @jlon in #162
  • fix: failed to load so library by @bigbigxu in #170
  • fix: illegal option hostname on macos by @201341 in #179
  • fix: fix capacity calculation and web ui by @jlon in #178
  • fix: ufs not found for original s3 file by @201341 in #183
  • fix: resolve java_abi exception handling to prevent crash by @bigbigxu in #182
  • fix: adapt to different os version by @201341 in #184
  • Remove unnecessary container name by @huchenchen1991 in #194
  • fix: move bindgen to build-dependencies in curvine-fuse by @QuantumBear in #205
  • fix: fuse setattr return value by @jlon in #208
  • fix: fuse directory traversal permission enforcement and setattr mode handling by @jlon in #213
  • fix: invalid deleting when removing by worker_id in rocks store by @zuston in #215
  • fix: unsupportedufsread comment by @cxzl25 in #219
  • fix: ufs filetype miss and get_status error by @201341 in #242
  • fix: optimize s3 module string constants by @jlon in #240
  • fix: custom env variables are overwritten by curvine-env.sh by @shuoranliu in #250
  • fix: hard link compile error by @szbr9486 in #265
  • fix: inode parent not set by @jlon in #272
  • fix: mkdir miss uid and gid, refine open dir permission check by open… by @lzjqsdd in #273
  • fix: gid and uid resolve when user group not exists by @lzjqsdd in #274
  • fix: build ubuntu image /bin/sh not support source (#280) by @lzjqsdd in #283
  • fix: remove the default value of the ORPC_BIND_HOSTNAME environment by @bigbigxu in #287
  • ci: add release workflow by @lzjqsdd in #293
  • fix: txrx variable name by @cxzl25 in #296
  • fix: make rename() subdir check UTF-8 safe by @boneanxs in #295

📦 Dependencies

🔧 Code Refactoring

  • refactor: load function adapts to static distribution and code optimization by @bigbigxu in #87
  • refactor: replace fixed sleep with process status check in restart-al… by @QuantumBear in #160
  • refactor: remove unnecessary lock operations in MountManager (#143) by @bigbigxu in #146
  • refactor: optimize the mount point caching mechanism (#206) by @bigbigxu in #209
  • refactor: cli optimization (#210) by @bigbigxu in #217
  • refactor: optimize ByteBuffer creation by @bigbigxu in #238
  • refactor: optimize metadata data storage by @lzjqsdd in #233
  • refactor: optimize write performance for multiple replicas by @bigbigxu in #244
  • refactor: optimize data loading code to solve the problem that block_on may cause deadlock by @bigbigxu in #261
  • refactor: put csi resource in an individual namespace by @shuoranliu in #264

🔄 Other Changes

New Contributors

Full Changelog: https://github.com/CurvineIO/curvine/commits/v0.1.0