Commit Graph
32 Commits
Author SHA1 Message Date
安正超andGitHub 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
housemeandGitHub d74e6eb042 refactor(tls): centralize runtime foundation (#3065)
* refactor(targets): move notify net helpers from utils

* refactor(tls): centralize runtime foundation

* refactor(targets): move notify net helpers from utils

* refactor(tls): centralize runtime foundation

* feat(tls-runtime): add TLS debug state and admin handler

* refactor(tls-runtime): unify TLS debug consumer status view

* fix(tls): address PR3065 review feedback

* refactor(tls): align debug status payload types

* refactor(targets): harden TLS hot reload paths

* fix(targets): resolve review-4348251652 findings

* fix(targets): finalize tls runtime review follow-ups

* fix(targets): harden tls reload and review follow-ups

* fix(targets): align tls reload handling across targets

* fix(targets): finalize tls reload state and metrics updates

* chore(deps): trim unused TLS deps

* style(targets): normalize TLS reload formatting

* refactor(targets): introduce tls runtime adapter path

* chore: update workspace manifests for tls refactor

* fix(tls): stabilize material reload and audit workflow

* fix(targets): refresh tls fingerprint flow across sinks

* fix(tls): align runtime coordinator and http reader updates

* fix(sftp): simplify protocol error mapping

* fix(tls): harmonize material loading behavior

* fix(server): finalize tls material wiring in startup flow

* fix(protos): tighten tls generation cache and deps
2026-05-24 06:41:15 +00:00
bca8b08c2b fix: handle Windows paths in pre-commit tests (#2974)
Co-authored-by: houseme <[email protected]>
2026-05-15 14:04:51 +00:00
fd3fb77ed5 fix(sftp): avoid metadata on multipart copy (#2935)
Co-authored-by: houseme <[email protected]>
2026-05-13 07:44:09 +00:00
fe5690ca70 fix(sftp): preserve open attrs metadata (#2929)
Co-authored-by: houseme <[email protected]>
2026-05-12 13:34:52 +00:00
25cf164461 test(protocols): cover SFTP host key reload failure (#2928)
Co-authored-by: houseme <[email protected]>
2026-05-12 10:40:23 +00:00
安正超andGitHub 8169bd63e9 test(protocols): cover TLS reload fingerprint ordering (#2927) 2026-05-12 02:50:49 +00:00
6185d38911 fix(protocols): add hot reload for WebDAV FTPS and SFTP (#2922)
Signed-off-by: houseme <[email protected]>
Co-authored-by: Copilot Autofix powered by AI <[email protected]>
2026-05-11 16:25:20 +00:00
Henry GuoandGitHub 1c94f7a066 fix(sftp): classify backend errors by type (#2909) 2026-05-11 02:56:08 +00:00
housemeandGitHub 53ec1b95d8 keep sftp e2e tests buildable (#2897) 2026-05-10 11:52:15 +00:00
安正超andGitHub 65c62ab2ea test(sftp): cover init session activity stamp (#2898) 2026-05-10 09:57:04 +00:00
安正超andGitHub c419cff348 test(sftp): cover init negotiation and platform gating (#2896) 2026-05-10 05:59:10 +00:00
96b293bf8a feat(sftp): add SFTPv3 protocol support (#2875)
Co-authored-by: houseme <[email protected]>
2026-05-10 03:48:42 +00:00
+1 8892cbbdd7 feat: enhance WebDAV support with features and directory operations (#2856) (#2892)
Signed-off-by: giter <[email protected]>
Signed-off-by: 安正超 <[email protected]>
Co-authored-by: giter <[email protected]>
Co-authored-by: 安正超 <[email protected]>
Co-authored-by: Copilot Autofix powered by AI <[email protected]>
Co-authored-by: Lijiajie <[email protected]>
Co-authored-by: cxymds <[email protected]>
Co-authored-by: loverustfs <[email protected]>
Co-authored-by: 唐小鸭 <[email protected]>
Co-authored-by: copilot-swe-agent[bot] <[email protected]>
Co-authored-by: houseme <[email protected]>
2026-05-09 16:45:09 +00:00
61d2e9fbc3 test(webdav): cover decoded path parsing (#2729)
Co-authored-by: houseme <[email protected]>
2026-04-29 07:30:40 +00:00
giterandGitHub 90ce72122b fix(webdav): decode URL-encoded filenames in path parsing (#2722)
Signed-off-by: giter <[email protected]>
2026-04-28 14:06:05 +00:00
安正超andGitHub 68d3dba9fc fix: revert standalone #2351 artifacts (phase 5) (#2535) 2026-04-14 22:35:05 +08:00
安正超andGitHub 2a3d127a86 revert: restore PutObjReader and remove PUT zero-copy chunk path (#2351 phase 2) (#2532) 2026-04-14 16:35:03 +08:00
979626c370 refactor(utils): decouple config deps and move sys helpers (#2520)
Co-authored-by: houseme <[email protected]>
2026-04-13 21:05:03 +08:00
32bf8f5bf3 feat(storage): add direct chunk GET fast path (#2351)
Signed-off-by: houseme <[email protected]>
Co-authored-by: heihutu <[email protected]>
Co-authored-by: cxymds <[email protected]>
2026-04-07 08:33:46 +08:00
weisdandGitHub 5d302febb7 fix(rio): preserve reader capabilities and crypto safety (#2363) 2026-04-03 13:57:42 +08:00
19b8389dc4 fix(disk): Fix Usage Report Capacity Calculation (#2274)
Co-authored-by: cxymds <[email protected]>
Co-authored-by: loverustfs <[email protected]>
Co-authored-by: heihutu <[email protected]>
2026-03-24 23:47:30 +08:00
d3cff7d033 feat(webdav): add WebDAV protocol gateway (#2158)
Signed-off-by: yxrxy <[email protected]>
Co-authored-by: houseme <[email protected]>
Co-authored-by: 马登山 <[email protected]>
Co-authored-by: heihutu <[email protected]>
Co-authored-by: Copilot Autofix powered by AI <[email protected]>
Co-authored-by: 安正超 <[email protected]>
2026-03-14 23:06:53 +08:00
9908a44c38 fix(protocols): return errors instead of panics for sync signatures (#2120)
Co-authored-by: houseme <[email protected]>
Co-authored-by: heihutu <[email protected]>
2026-03-11 11:22:20 +08:00
8e4a1ef917 refactor(protocols): replace tar with astral-tokio-tar for async processing (#2099)
Co-authored-by: Copilot <[email protected]>
Co-authored-by: houseme <[email protected]>
2026-03-08 15:18:15 +08:00
b07383760f Add OpenStack Swift API Support (#2066)
Co-authored-by: houseme <[email protected]>
Co-authored-by: Copilot <[email protected]>
2026-03-08 01:11:35 +08:00
d17d2083d4 feat(targets): enhance webhook TLS support with custom CA and skip-verify (#1994)
Co-authored-by: Copilot <[email protected]>
Co-authored-by: houseme <[email protected]>
Co-authored-by: heihutu <[email protected]>
2026-02-27 21:24:49 +08:00
housemeandGitHub 024a3107d8 build(deps): bump the dependencies group with 4 updates (#1955) 2026-02-25 19:21:20 +08:00
deb1dbedbb fix(ftps): Fix basename extraction and implement recursive delete (#1920)
Co-authored-by: houseme <[email protected]>
Co-authored-by: heihutu <[email protected]>
2026-02-24 20:49:57 +08:00
安正超andGitHub 4211652991 refactor(app): add application layer module entry (#1907) 2026-02-22 22:15:37 +08:00
dependabot[bot]GitHubdependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>houseme
ff8c1c782a build(deps): bump libunftp from 0.21.0 to 0.22.0 in the dependencies group across 1 directory (#1756)
Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: houseme <[email protected]>
2026-02-09 13:43:47 +08:00
5c2eda356e feat: migrate FTP/SFTP to protocols crate and update dependencies (#1580)
Signed-off-by: yxrxy <[email protected]>
Signed-off-by: houseme <[email protected]>
Signed-off-by: heihutu <[email protected]>
Co-authored-by: houseme <[email protected]>
Co-authored-by: heihutu <[email protected]>
Co-authored-by: loverustfs <[email protected]>
2026-02-06 20:58:42 +08:00