Binary Downloads
Rocky Linux 9
- x86_64: Download the
.tar.gzfile from the assets below
Installation
- Download the binary package
- Extract:
tar -xzf curvine-*.tar.gz - 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
- add openssl dependency for docker by @lzjqsdd in #27
- [#42] remove reqwest openssl-devel dependency by @lzjqsdd in #43
- [#62] feat: Setup 1.86.0 as default rustc version by @zuston in #63
- adapted to clippy 1.88 by @bigbigxu in #82
- build: fix rust toolchain version to 1.88.0 (#97) by @lzjqsdd in #98
🔧 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
- [#5] sync docker compile image to dockerhub by @lzjqsdd in #6
- add i18n for readme by @lzjqsdd in #23
- update i18n for readme by @lzjqsdd in #25
- [#32] add makefile by @lzjqsdd in #34
- docs: correct Ubuntu version in README by @SteveLauC in #49
- load job and webui optimize by @lzjqsdd in #52
- Revert "[#64] fix: Fast return in different fuse2/3 features" by @bigbigxu in #67
- ci: add commitlint (#68) by @lzjqsdd in #75
- docs: update issue templates (#68) by @lzjqsdd in #77
- docs: update curvine scenario (#78) by @lzjqsdd in #83
- ci: clippy allow uninlined-format-args (#71) by @lzjqsdd in #84
- build: add curvine-compile image by @lzjqsdd in #101
- build: add makefile cmd for docker build (#99) by @lzjqsdd in #107
- docs: update README.md set require protobuf version to 3.x (#127) by @szbr9486 in #126
- build: add dependency check before build (#125) by @lzjqsdd in #129
- build: auto check fuse build version (#130) by @lzjqsdd in #131
- docs: add Curvine contribute guidelines doc(#54) by @szbr9486 in #136
- docs: add code of conduct by @szbr9486 in #150
- style: remove issue require by @lzjqsdd in #157
- test: Add test case for
fs_reader_parallelby @zuston in #153 - Revert "fix: ufs access time error" by @bigbigxu in #165
- chore: get relative dir to execute script by @QuantumBear in #167
- style: fix clippy error by @bigbigxu in #176
- build: change github action commit linti to warning,add pr title check by @lzjqsdd in #199
- perf: optimize ttl bucket implementation by @jlon in #204
- style: add a copyright notice by @bigbigxu in #232
- ci: bump upload artifact version by @lzjqsdd in #297
- ci: read release content permission fix by @lzjqsdd in #299
New Contributors
- @bigbigxu made their first contribution in #17
- @SteveLauC made their first contribution in #49
- @zuston made their first contribution in #63
- @Xuanwo made their first contribution in #70
- @201341 made their first contribution in #69
- @cxzl25 made their first contribution in #91
- @szbr9486 made their first contribution in #126
- @QuantumBear made their first contribution in #160
- @huchenchen1991 made their first contribution in #194
- @shuoranliu made their first contribution in #250
- @boneanxs made their first contribution in #295
Full Changelog: https://github.com/CurvineIO/curvine/commits/v0.1.0