houseme
088c4bda43
fix(ecstore): harden issue3031 multipart validation path ( #3106 )
...
* fix(ecstore): harden issue3031 multipart validation path
- clear stale multipart part destinations before rename fan-out
- add repeated part overwrite regression coverage
- reduce remote disk startup false-fault escalation to suspect-first
- refine remote locker diagnostics and lower scanner leader-lock log noise
- add a dedicated 4-node issue3031 docker validation script
* refactor(admin): inline console version json macro
- drop the unused serde_json::json import in admin console
- call serde_json::json! inline in version_handler
- keep the console version response behavior unchanged
* fix(remote-disk): recover suspect health on probe success
- record probe success during remote disk health checks so suspect drives recover
- use async_with_vars for the remote disk health probe test
- make the missing-listener test assert the state transition more robustly
2026-05-28 14:26:31 +00:00
houseme
5dfc1b5f07
fix(readiness): gate on lock quorum health ( #3100 )
...
* fix(readiness): gate on lock quorum health
Include distributed lock quorum in runtime readiness decisions and expose the signal in health responses.
Map namespace lock quorum failures to ServiceUnavailable instead of InternalError so clients can safely retry while keeping quorum enforcement unchanged.
* fix(ecstore): restore namespace lock error decoding
Add the missing from_u32 arm for NamespaceLockQuorumUnavailable and cover the numeric roundtrip in error tests.
2026-05-27 17:12:52 +00:00
安正超
0875f09a39
fix: rebuild wiped disks during admin heal ( #3084 )
...
* fix: rebuild wiped disks during admin heal
* Preserve forceStart heal admission semantics
* Address heal regression test review comments
* fix(heal): address admin heal review comments
* fix(heal): fix force-start dedup and test polling
* fix(heal): address unresolved review comments
* fix(heal): simplify dedup key for clippy
---------
Co-authored-by: houseme <housemecn@gmail.com >
2026-05-26 21:54:29 +08:00
houseme
e69e32285b
fix(ecstore): harden multipart part metadata visibility ( #3042 )
...
* fix(ecstore): harden multipart part metadata visibility
* fix(ecstore): address PR3042 review follow-ups
2026-05-21 14:47:52 +00:00
cxymds
c65d4071a3
fix(ecstore): map missing metadata to not found ( #2944 )
...
Co-authored-by: houseme <housemecn@gmail.com >
2026-05-13 13:03:15 +00:00
houseme
c90bfe2b23
fix(ecstore): harden runtime read-path quorum handling ( #2872 )
2026-05-08 09:56:39 +00:00
安正超
50ddec3ffc
fix: preserve data on self metadata copy ( #2819 )
...
Co-authored-by: cxymds <Cxymds@qq.com >
2026-05-06 06:28:36 +00:00
安正超
a455b4377c
fix: handle empty multipart list-parts ( #2765 )
...
Co-authored-by: loverustfs <hello@rustfs.com >
2026-05-02 02:47:52 +00:00
houseme
2953558f41
fix(lifecycle): prevent eager date-expiry deletion on config update ( #2708 )
2026-04-28 10:26:14 +00:00
安正超
f9b5ad17a9
fix(s3): ignore empty conditional ETag headers ( #2592 )
...
Co-authored-by: houseme <housemecn@gmail.com >
2026-04-18 15:27:46 +00:00
houseme
478720d2ee
Centralize lifecycle state updates and fix systemd running status ( #2567 )
2026-04-17 03:20:11 +00:00
houseme
28edfd6190
fix(storage): harden offline drive fail-fast paths ( #2564 )
...
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: houseme <4829346+houseme@users.noreply.github.com >
2026-04-16 09:21:45 +00:00
Tunglies
579b124726
lint: clippy rules or_fun_call ( #2561 )
...
Co-authored-by: houseme <housemecn@gmail.com >
2026-04-16 02:48:39 +00:00
安正超
6d476ae9a1
revert: remove BlockReadable trait and chunk-based I/O from rio, ecstore, disk layers ( #2533 )
2026-04-14 19:09:02 +08:00
安正超
2a3d127a86
revert: restore PutObjReader and remove PUT zero-copy chunk path ( #2351 phase 2) ( #2532 )
2026-04-14 16:35:03 +08:00
安正超
458086dc80
fix(get): remove GET chunk fast path ( #2507 )
2026-04-12 23:12:23 +08:00
Mohamed Zenadi
c8c71e34b6
fix(storage): fix critical bug in range calculation ( #2493 )
...
Signed-off-by: Mohamed Zenadi <zeapo@users.noreply.github.com >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-04-12 00:20:15 +08:00
houseme
064e21062d
fix(capacity): harden scope registry, scan symlink guard, and test temp dir cleanup ( #2432 )
...
Co-authored-by: heihutu <heihutu@gmail.com >
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: houseme <4829346+houseme@users.noreply.github.com >
2026-04-08 20:58:17 +08:00
houseme
32bf8f5bf3
feat(storage): add direct chunk GET fast path ( #2351 )
...
Signed-off-by: houseme <housemecn@gmail.com >
Co-authored-by: heihutu <heihutu@gmail.com >
Co-authored-by: cxymds <Cxymds@qq.com >
2026-04-07 08:33:46 +08:00
houseme
7172e151de
fix: address correctness, safety, and concurrency issues ( #2327 )
...
Co-authored-by: heihutu <heihutu@gmail.com >
Co-authored-by: houseme <housemecn@gmail.com >
2026-03-30 00:30:57 +08:00
weisd
41dcebda44
fix(tier): sweep transitioned copies from delete handlers ( #2287 )
2026-03-25 16:06:36 +08:00
weisd
b9b7d86ae4
feat: improve legacy metadata and admin compatibility ( #2202 )
2026-03-18 21:05:09 +08:00
evan slack
4b480727d6
feat(perf): Add configurable bitrot skip for reads ( #2110 )
...
Co-authored-by: houseme <housemecn@gmail.com >
Co-authored-by: 安正超 <anzhengchao@gmail.com >
2026-03-11 10:59:00 +08:00
evan slack
d52a10c5fb
chore(obs): Improve tracing instrumentation ( #2086 )
...
Co-authored-by: loverustfs <hello@rustfs.com >
2026-03-07 20:03:20 +08:00
weisd
e3815aa101
fix(ecstore): add etag fallback when mod_time unavailable in metadata ( #2042 )
2026-03-02 13:50:17 +08:00
evan slack
ae6eacd7e3
fix(typo): change dang_ling to dangling ( #1968 )
2026-02-26 13:03:36 +08:00
安正超
7f132a290c
refactor(ecstore): split set_disk.rs into submodules ( #1945 )
2026-02-25 07:41:08 +08:00