cxymds
|
2f25cf606e
|
fix(storage): harden rebalance decommission state (#3515)
|
2026-06-22 12:03:13 +08:00 |
|
安正超
|
54ffbedbc8
|
refactor: remove ecstore operation compat facades (#3608)
|
2026-06-19 17:01:12 +08:00 |
|
安正超
|
e5cad7ed20
|
refactor: move object operation contracts (#3559)
|
2026-06-18 09:48:13 +08:00 |
|
安正超
|
919deeb816
|
refactor: move object option helper contracts (#3521)
|
2026-06-17 22:56:10 +08:00 |
|
cxymds
|
9504dff595
|
fix(ecstore): harden rebalance data movement (#3234)
* fix(ecstore): harden rebalance data movement
* fix(ecstore): preserve failed rebalance status
* fix(ecstore): avoid rebalance walkdir total timeout
* fix(ecstore): retry rebalance listing timeouts
* fix(ecstore): restrict data movement resume target
* refactor(ecstore): simplify multipart movement target
* fix(ecstore): restore resume target checks
* perf(ecstore): speed up rebalance bucket merges
* fix: keep rebalance listing alive on transient failures
---------
Co-authored-by: houseme <housemecn@gmail.com>
|
2026-06-08 10:40:26 +00:00 |
|
安正超
|
97dd825468
|
fix(ecstore): optimize ObjectInfo clone and fix critical TODOs (#3149)
* fix(ecstore): optimize ObjectInfo clone and fix critical TODOs
## ObjectInfo hot-path clone optimization (issue #653 item 2)
- Wrap user_defined (HashMap), user_tags (String), parts (Vec) in Arc
- Clone cost reduced from ~20 heap allocations to O(1) ref count bump
- Updated 11 downstream access sites with explicit deref where needed
## Critical TODO/FIXME fixes (issue #653 item 7)
- rpc/peer_s3_client.rs: descriptive error message for empty peer response
- set_disk/write.rs: concurrent rollback deletes via tokio::spawn + join_all
- store_list_objects.rs: resolved FIXME with explanation + 4 regression tests
- store/bucket.rs: namespace write locks for make_bucket and delete_bucket
Skipped TODOs (too risky without broader context):
- multipart.rs:30 nslock — causes lock timeout in existing tests
- bucket.rs:88 cached list_bucket — needs cache invalidation strategy
- bucket.rs:149 replication delete — needs replication subsystem integration
1134 tests pass (1 flaky under parallel execution, passes individually).
* fix: address PR #3149 review comments
- Preserve NamespaceLockQuorumUnavailable variant in bucket create/delete
- Fix cancellation test to actually test cancellation (keep senders open)
- Update ObjectInfo consumers in app/ for Arc-backed fields
- Update bucket_usecase.rs user_tags to Arc<String>
* fix: update ObjectInfo Arc consumers
* fix: address ecstore merge review comments
* fix: cancel blocked merge output sends
* fix(ecstore): satisfy ObjectInfo clone clippy
|
2026-06-01 00:44:58 +00:00 |
|
安正超
|
642d83f0e4
|
revert: remove #2351 chunk I/O and object-io crate (phase 7) (#2543)
Co-authored-by: houseme <housemecn@gmail.com>
|
2026-04-15 10:54:41 +08: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 |
|
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 |
|
weisd
|
5d302febb7
|
fix(rio): preserve reader capabilities and crypto safety (#2363)
|
2026-04-03 13:57:42 +08:00 |
|
安正超
|
a236b0d01d
|
feat(ecstore): implement decommission and rebalance (#2281)
Co-authored-by: weisd <im@weisd.in>
Co-authored-by: houseme <housemecn@gmail.com>
|
2026-03-26 11:44:02 +08:00 |
|