overtrue
dfa5d50565
feat(capture): persist first-decision provenance
2026-10-11 18:58:12 +08:00
overtrue
a902886737
feat(capture): atomically migrate legacy Created history
2026-10-11 16:39:10 +08:00
overtrue
8e53b87421
test(capture): specify atomic populated native migration
2026-10-11 16:39:10 +08:00
overtrue
f7631e91b1
feat(capture): stream an owned coherent snapshot view
2026-10-11 16:30:12 +08:00
overtrue
f9bc4e921f
test(capture): specify coherent snapshot view ownership
2026-10-11 16:30:12 +08:00
overtrue
781584307a
feat(capture): apply committed native entries on the ordered worker
2026-10-11 15:35:02 +08:00
overtrue
59d641a5fe
docs(capture): define recoverable checkpoint and purge contracts
2026-10-11 15:00:38 +08:00
overtrue
c618b57870
feat(capture): stream snapshot rows with a permanent failure fence
2026-10-11 14:44:05 +08:00
overtrue
bbe1d54098
feat(capture): add bounded streaming snapshot codec
2026-10-11 14:21:30 +08:00
overtrue
9e8ea4dcdb
feat(capture-authority): serialize native async writes
2026-10-11 13:35:15 +08:00
overtrue
63cf8e2f2f
feat(capture-authority): add native OpenRaft log reader
2026-10-11 13:01:43 +08:00
overtrue
b7fe40f4b3
feat(capture): support complete native log range bounds
2026-10-11 12:28:23 +08:00
overtrue
5b872b8e56
feat(capture): apply native entries atomically with durable replay
2026-10-11 11:50:32 +08:00
overtrue
ca5be1ef95
feat(capture): persist native Raft entries in explicitly enabled stores
2026-10-11 05:49:17 +08:00
overtrue
9373e8fa3e
Bind capture commands and responses to native Raft entries
2026-10-11 03:45:17 +08:00
overtrue
cb32965522
feat(capture): preserve exact raft values and membership codec
2026-10-11 02:04:47 +08:00
overtrue
fb6cf49a67
feat(capture): validate peer metadata and CNOD codec
2026-10-11 01:25:21 +08:00
overtrue
8c97049e68
build(capture): pin OpenRaft and guard resolved features
2026-10-11 00:56:30 +08:00
overtrue
17d4fe27cc
feat(capture): apply committed Created decisions atomically
2026-10-10 23:35:52 +08:00
overtrue
fb0c7972b2
feat(capture): persist committed log boundary
2026-10-10 23:10:28 +08:00
overtrue
eba7967755
feat(capture): persist atomic log suffix truncation
2026-10-10 22:59:26 +08:00
overtrue
451c1c31ad
feat(capture): add durable local authority storage
2026-10-10 22:33:44 +08:00
overtrue
8780dd670e
test(ecstore): verify publication across process kills
2026-10-10 20:19:46 +08:00
overtrue
f29bf2c902
fix(iam): preserve empty identity read failures
2026-10-10 11:37:07 +08:00
overtrue
fd03436090
feat(ecstore): expose unbounded preserve-empty config reads
2026-10-10 11:10:27 +08:00
overtrue
1f1e7b1c97
fix(iam): preserve identity decryption errors
2026-10-10 10:37:15 +08:00
overtrue
45a952609e
test(iam): add real identity storage fixtures
2026-10-10 10:01:03 +08:00
overtrue
323190a95a
test(test-utils): support caller-owned instance contexts
2026-10-10 09:43:01 +08:00
overtrue
38cdda9292
fix(ecstore): expose config reader without private bounds
2026-10-10 09:11:47 +08:00
overtrue
85c84fa73d
feat(policy): add dormant principal incarnation records
2026-10-10 08:12:14 +08:00
overtrue
51402087c5
feat(ecstore): expose bounded config snapshot reader
2026-10-10 08:03:27 +08:00
overtrue
a994984fe2
build(policy): prepare identity incarnation UUID dependency
2026-10-10 06:57:51 +08:00
overtrue
48eb0e402c
test(iam): use identity constructor in existing fixtures
2026-10-10 06:52:04 +08:00
GatewayJ
446479791e
refactor(iam): remove legacy OIDC federation paths ( #8433 )
...
Co-authored-by: Hauser <housemecn@gmail.com >
2026-10-09 07:11:50 -07:00
Chris
99af59a914
Merge commit from fork
2026-10-09 21:43:53 +08:00
Chris
b77bd26874
Merge commit from fork
2026-10-09 21:43:08 +08:00
Chris
956c1cf027
Merge commit from fork
2026-10-09 21:40:59 +08:00
Chris
8b9d44110e
Merge commit from fork
2026-10-09 21:40:08 +08:00
Chris
44ce8d114f
Merge commit from fork
2026-10-09 21:39:18 +08:00
Chris
769b0d7578
Merge commit from fork
2026-10-09 21:28:19 +08:00
Chris
03e775947d
Merge commit from fork
2026-10-09 21:18:27 +08:00
Hauser
25e73d3bd6
fix(zip): statically link liblzma on macOS ( #8434 )
...
* fix(zip): statically link liblzma on macOS
Co-Authored-By: heihutu <heihutu@gmail.com >
Co-Authored-By: zhi22915 <qiuzgang@gmail.com >
* fix(zip): pin macOS liblzma minimum to 0.4.8
Co-Authored-By: heihutu <heihutu@gmail.com >
Co-Authored-By: zhi22915 <qiuzgang@gmail.com >
* fix(admin): route bucket recovery errors through facade
Co-Authored-By: heihutu <heihutu@gmail.com >
Co-Authored-By: zhi22915 <qiuzgang@gmail.com >
* fix(ecstore): group version pagination markers
Co-Authored-By: heihutu <heihutu@gmail.com >
Co-Authored-By: zhi22915 <qiuzgang@gmail.com >
* fix(heal): avoid cloning copy purge identity
Co-Authored-By: heihutu <heihutu@gmail.com >
Co-Authored-By: zhi22915 <qiuzgang@gmail.com >
---------
Co-authored-by: heihutu <heihutu@gmail.com >
Co-authored-by: zhi22915 <qiuzgang@gmail.com >
2026-10-09 16:25:24 +08:00
Hauser
a464b45367
fix(rustfs): keep recovery handler within S3 gateway ( #8429 )
...
* fix(rustfs): route recovery errors through S3 gateway
Co-Authored-By: heihutu <heihutu@gmail.com >
Co-Authored-By: zhi22915 <qiuzgang@gmail.com >
* fix(ecstore): satisfy strict Clippy pagination checks
Co-Authored-By: heihutu <heihutu@gmail.com >
Co-Authored-By: zhi22915 <qiuzgang@gmail.com >
* fix(heal): avoid cloning Copy purge identity
Co-Authored-By: heihutu <heihutu@gmail.com >
Co-Authored-By: zhi22915 <qiuzgang@gmail.com >
* test: restore one-second drive request budgets
* fix(ecstore): resume pending lock bucket creation
Allow retries to reuse an uncommitted Object Lock bucket intent when the same incarnation remains unretired and all physical volumes are absent. Isolate the recovery entrypoint test from the shared production leader lock.
Co-Authored-By: heihutu <heihutu@gmail.com >
Co-Authored-By: zhi22915 <qiuzgang@gmail.com >
* test: provision stack for deep catalog test futures
Apply the existing 4 MiB test-thread stack setup to table-catalog handler/store tests and the relocated-pool GET regression in both local and CI nextest profiles. These cases overflowed libtest's 2 MiB default stack on Linux.
Co-Authored-By: heihutu <heihutu@gmail.com >
Co-Authored-By: zhi22915 <qiuzgang@gmail.com >
---------
Co-authored-by: zhi22915 <qiuzgang@gmail.com >
Co-authored-by: overtrue <anzhengchao@gmail.com >
2026-10-09 14:08:12 +08:00
overtrue
5972a09cc3
test: restore one-second drive request budgets
2026-10-08 23:55:57 +08:00
Chris
8a5e730bc9
fix(storage): warn on stalled local disk operations ( #8395 )
2026-10-08 21:50:31 +08:00
Hauser
1df874b724
fix(obs): pass RustFS build version to telemetry ( #8425 )
...
fix(obs): align telemetry version with build identity
Co-authored-by: zhi22915 <qiuzgang@gmail.com >
2026-10-08 21:27:24 +08:00
eye-gu
68dcad8387
fix(listing): continue versioned delimiter listings from raw key ( #8424 )
...
* fix(listing): continue versioned delimiter listings from raw key
Versioned listings with a delimiter could end a page with
IsTruncated=false while keys remained past the folded scan window.
Continue from the last raw scanned key; a folded prefix cannot
advance forward_past on versioned walks.
Fixes #8423
* fix(listing): filter resumed version prefixes
Apply the ListObjectVersions CommonPrefixes key-marker boundary before
page truncation and resume at the last raw key represented by the final
returned prefix.
Refs rustfs/backlog#2791
Co-Authored-By: heihutu <heihutu@gmail.com >
Co-Authored-By: zhi22915 <qiuzgang@gmail.com >
---------
Co-authored-by: RustFS <hello@rustfs.com >
Co-authored-by: Hauser <housemecn@gmail.com >
Co-authored-by: heihutu <heihutu@gmail.com >
Co-authored-by: zhi22915 <qiuzgang@gmail.com >
2026-10-08 21:26:57 +08:00
Hauser
8474feaa26
fix: reconcile bucket generations and observe lock failures ( #8421 )
...
* fix: reconcile bucket generations and observe lock failures
Co-Authored-By: heihutu <heihutu@gmail.com >
Co-Authored-By: zhi22915 <qiuzgang@gmail.com >
* fix: fence bucket recovery through cancellation and quota reuse
Co-Authored-By: heihutu <heihutu@gmail.com >
Co-Authored-By: zhi22915 <qiuzgang@gmail.com >
* fix(heal): route tests through storage API boundary
Co-Authored-By: heihutu <heihutu@gmail.com >
Co-Authored-By: zhi22915 <qiuzgang@gmail.com >
* fix(ecstore): use typed lock errors in recovery
Co-Authored-By: heihutu <heihutu@gmail.com >
Co-Authored-By: zhi22915 <qiuzgang@gmail.com >
---------
Co-authored-by: zhi22915 <qiuzgang@gmail.com >
2026-10-08 21:26:12 +08:00
cxymds
d386f7741d
fix(lifecycle): coordinate tier free-version recovery scans ( #8387 )
...
* fix(lifecycle): coordinate tier free-version recovery scans
* fix(lifecycle): remove obsolete recovery enqueue entry point
* test(upgrade): wait for writers after each rolling replacement
2026-10-08 21:24:34 +08:00
GatewayJ
5b4432620e
refactor(iam): separate OIDC authentication mapping ( #8416 )
2026-10-08 21:21:22 +08:00