Repository navigation
v0.5.0-alpha
What's Changed
🔄 Other Changes
- fix(master): clean checkpoint on snapshot enqueue failure by @sf1999817 in #1535
- fix(fuse): make FUSE startup failures actionable by @jlon in #1538
- fix(io): keep LocalFile position and read/write consistent by @bigbigxu in #1539
- test(fuse): gate hot-reload and git-clone behind --extended by @bigbigxu in #1542
- fix(master): return file_not_found for missing inode by @bigbigxu in #1541
- docs: make Slack badge larger and standalone by @lzjqsdd in #1545
- fix(fuse): delete unused code as curvine-fuse doesn't support bsd by @201341 in #1553
- fix(fuse): do not clear S_ISUID on same-uid/same-gid chown (#1549) by @gongxun0928 in #1547
- fix(fuse): require file owner for setattr gid changes (#1548) by @gongxun0928 in #1546
- fix(config): move default web ports off 9000 to avoid conflicts by @bigbigxu in #1562
- fix(fuse): stop advertising unsupported setxattr extension by @ljy1-lixing in #1563
- fix(unified-fs): use DeleteResult for delete stats (#1543) by @lzjqsdd in #1544
- fix(raft): restore durable snapshot recovery by @jlon in #1554
- fix(rocksdb): flush all column families before checkpoint by @jlon in #1555
- fix(master): skip empty placeholder snapshots by @jlon in #1556
- fix(raft): fence leader promotion after metadata apply by @jlon in #1557
- fix(transfer): isolate standalone service configuration by @jlon in #1565
- fix(fuse): synchronize concurrent reader refresh by @ljy1-lixing in #1566
- fix(fuse): order OFD lock cleanup with queries by @ljy1-lixing in #1570
- docs: update README by removing old content by @szbr00 in #1572
- docs: update README.md by removing obsolete links by @szbr00 in #1573
- fix(fuse): clear set-id on chown to match Linux (closes #1567) by @gongxun0928 in #1574
- fix(fuse): strip unauthorized setgid on create by @ljy1-lixing in #1569
- feat(version): add unified ComponentVersion type (#1527) by @lzjqsdd in #1571
- refactor(rpc): rename GetMasterInfo to GetFilesystemInfo (#1575) by @yangyang233333 in #1576
- feat(proto): add component and compatibility messages (#1527) by @lzjqsdd in #1580
- fix(client): degrade auto-cache overload to UFS by @ljy1-lixing in #1578
- fix(raft): advance applied index for leader no-op by @ljy1-lixing in #1579
- feat(proto): extend GetFilesystemInfo handshake with version fields (#1527) by @lzjqsdd in #1581
- docs(readme): refresh architecture diagram and add performance benchmarks by @szbr00 in #1583
- feat(client): add master handshake with legacy fallback (#1527) by @lzjqsdd in #1582
- feat(proto): report structured worker component version on heartbeat (#1527) by @lzjqsdd in #1584
- docs(readme): trim Why Curvine and AI Agent sections, add EKS blog link by @szbr00 in #1586
- feat(compat): add compatibility checker with diagnose/enforce policy (#1527) by @lzjqsdd in #1585
- feat(worker): accept component info on data plane (#1527) by @lzjqsdd in #1587
- feat(worker): negotiate client-worker compatibility per connection (#1527) by @lzjqsdd in #1588
- fix(libsdk): make CurvineNative jar extract interrupt-safe (#1591) by @akenO8 in #1593
- feat(release): validate and inject release versions (#1527) by @lzjqsdd in #1592
- feat(io): add pread and pwrite without moving the file offset by @bigbigxu in #1590
- fix(fuse): default max_readahead_kb to None by @bigbigxu in #1589
- fix(transfer): recover orphan Stale tasks that never finish jobs (#1595) by @xingnailu in #1596
- fix(worker): correct sparse buffered block reads by @ljy1-lixing in #1594
- fix(fuse): preserve getattr for unlinked inodes by @ljy1-lixing in #1597
- feat(compat): expose compatibility metrics and CLI worker version stats (#1527) by @lzjqsdd in #1598
- fix(fuse): prevent statfs signed capacity overflow (#1463) by @gangump82 in #1600
- fix(raft): accept contiguous snapshots during recovery (#1601) by @jlon in #1602
- feat(libsdk): expose PartialSuccess load job state to clients by @xingnailu in #1606
- docs(skills): strengthen cv-submit-pr-review semantic checks (#1608) by @szbr00 in #1609
- fix(rpc): handle early EOF gracefully in ReadFrame::receive by @bigbigxu in #1605
- docs(skills): add cv-test-report for Hextra Pages by @lzjqsdd in #1607
- feat(spdk): introduce spdk qpair observability metrics by @thuongle2210 in #1603
- feat(transfer): add PostgreSQL metadata store by @jlon in #1604
- fix(java-sdk): resolve LoadJobStatus compile error referencing missing proto field by @lzjqsdd in #1611
- docs: enhance README with architecture design details by @szbr00 in #1612
- fix(master): report allocatable capacity in statfs (#1460) by @gangump82 in #1610
- fix(fuse): reject unsupported mount options (#1399) by @gangump82 in #1613
- fix(config): trim whitespace in host:port address lists by @lzjqsdd in #1614
- docs(skills): add backward-compatibility checks for new params and proto fields to cv-submit-pr-review by @szbr00 in #1616
- fix(sdk): derive CurvineFsStat used from allocatable view (#1460) by @gangump82 in #1615
- feat(mds): add standalone service scaffold by @yangyang233333 in #1621
- feat(config): add unified layered config loading pipeline (#1619) by @lzjqsdd in #1620
- docs(skills): add intent-first review judgment to cv-submit-pr-review by @szbr00 in #1629
- fix(fuse): make session init metric observable by @ljy1-lixing in #1628
- feat(worker): log client address in block write logs by @bigbigxu in #1632
- feat(master): local policy assigns remaining replicas by weight by @bigbigxu in #1631
- feat(client): log git commit in filesystem creation by @bigbigxu in #1633
- feat(discovery): add etcd service discovery by @yangcx000 in #1618
- fix(libsdk): fix mount lifecycle to prevent use-after-free and double close by @bigbigxu in #1635
- feat(config): add validation framework and unknown-key audit (#1619) by @lzjqsdd in #1622
- fix(java): isolate MOUNT_CACHE by client mode (#1638) by @akenO8 in #1640
- refactor(config): load ClusterConf through the unified pipeline (#1619) by @lzjqsdd in #1623
- feat(mds): add generic KV abstraction and memory backend by @yangyang233333 in #1639
- fix(worker): use stored block length for replication reads (#1634) by @gangump82 in #1637
- refactor(fuse): generate mount CLI overrides from FuseConf (#1619) by @lzjqsdd in #1624
- fix(worker): cancel remote writer on replication failure (#1636) by @gangump82 in #1642
- refactor(config): converge config discovery on ConfigLoader (#1619) by @lzjqsdd in #1625
- feat(config): add hot-reload extension points (#1619) by @lzjqsdd in #1626
- feat(worker): add disk free-space ratio protection (free_ratio) by @gangump82 in #1644
- feat(java-sdk): complete transfer and filesystem lifecycle APIs by @jlon in #1649
- test(config): isolate environment-dependent failure paths by @uhmh123 in #1650
- feat(mds): add FoundationDB KV backend by @yangyang233333 in #1651
- docs(agents): add cv-codegraph skill for code exploration by @lzjqsdd in #1652
- refactor(metrics): remove redundant used_memory_bytes gauges (#1656) by @bigbigxu in #1657
- fix(client): commit blocks parked in cache_writers before append by @bigbigxu in #1655
- perf: demote expected IO errors to debug logging by @bigbigxu in #1653
- feat(mds): make FoundationDB backend optional via fdb feature by @lzjqsdd in #1658
New Contributors
Full Changelog: v0.4.1...v0.5.0-alpha