安正超
e65aebba53
fix(ecstore): guard transition worker max ( #3003 )
...
* fix(ecstore): guard transition worker max
* test: clarify env mutation safety
* test(ecstore): document env mutation concurrency contract
2026-05-19 02:25:51 +00:00
houseme
bd1e57293f
fix: harden lifecycle transition compensation and regression coverage ( #2995 )
...
* fix(ecstore): honor transition worker configuration
* fix(ecstore): add transition queue backpressure metrics
* fix(ecstore): schedule transition compensation on enqueue pressure
* fix(ecstore): log transition compensation scheduling
* test(rustfs): add transition compensation fault-injection coverage
* test(rustfs): cover delete after transition compensation
* test(scanner): cover cleanup after transition compensation
* test(rustfs): extend compensation transition coverage
* test(scanner): cover backfill idempotency after compensation
* test(scanner): cover noncurrent expiry after compensation
* test(rustfs): cover versioned delete after compensation
* test(rustfs): cover delete marker lifecycle after compensation
* test(scanner): extend versioned lifecycle compensation coverage
* test(scanner): model versioned delete after compensation
* test(scanner): clarify modeled versioned delete helper
* refactor(ecstore): optimize transition enqueue hot path
* refactor(ecstore): centralize transition runtime constants
* style(ecstore): apply rustfmt for transition timeout helper
* fix(ilm): align queue-full metric semantics
* refactor(ecstore): unify immediate enqueue failure handling
* refactor(ecstore): reuse transition worker env constant
* ci(actions): update setup action inputs
2026-05-18 12:50:43 +00:00
Henry Guo
17ae9f34c7
fix(notify): accept case-insensitive filter rule names ( #2990 )
2026-05-18 03:41:48 +00:00
houseme
6e12289339
fix(runtime): finalize issue 2941 profiling cleanup ( #2983 )
...
* perf(runtime): narrow profiling support and upgrade starshard
* style(notify): normalize starshard imports
* perf(ecstore): reduce list_path_raw coordination overhead
* docs(scripts): add issue 2941 perf capture workflow
* fix(runtime): finalize issue 2941 profiling cleanup
* build(deps): bump quick-xml to 0.40.0
* chore(scripts): untrack local perf capture guide
* fix(scripts): honor label in perf capture output
2026-05-16 11:09:04 +00:00
weisd
9dcf8cb7ea
fix: stabilize rebalance start and listing ( #2961 )
...
* fix: unblock empty chunked admin rebalance start
Some admin clients send empty POST requests with chunked framing and no explicit content length. The admin rebalance route carries no request body, so normalize that known route before downstream validation sees a missing length.
Constraint: Keep normalization scoped to known empty-body admin routes
Rejected: Relax transfer-encoding handling for S3 routes | broader protocol risk
Confidence: high
Scope-risk: narrow
Tested: cargo test -p rustfs --lib server::layer::tests::
Tested: cargo fmt --all --check
Tested: git diff --check
* fix: keep rebalance listing from stalling
Large object migration was awaited inside the listing callback, so metacache readers could stop being drained while drive walk operations were still writing listing data. Move entry migration into bounded background tasks and wait for them after each set listing completes.
Constraint: Preserve existing rebalance cancellation and first-error propagation
Rejected: Only increase drive walk timeouts | masks callback backpressure and still fails for slower migrations
Confidence: medium
Scope-risk: moderate
Tested: cargo test -p rustfs-ecstore rebalance_unit_tests
Tested: cargo test -p rustfs-ecstore cache_value::metacache_set::tests
Tested: cargo test -p rustfs --lib server::layer::tests::
Tested: cargo clippy -p rustfs-ecstore --lib --all-features -- -D warnings
Tested: cargo clippy -p rustfs-ecstore --tests --all-features -- -D warnings
Tested: cargo fmt --all --check
Tested: git diff --check
---------
Co-authored-by: loverustfs <hello@rustfs.com >
Co-authored-by: houseme <housemecn@gmail.com >
Co-authored-by: cxymds <Cxymds@qq.com >
2026-05-16 05:17:01 +00:00
安正超
6898e720dd
fix(security): harden proxy auth and default credentials ( #2981 )
...
* fix(security): harden proxy auth and default credentials
* fix(security): address proxy and credential feedback
2026-05-16 04:01:50 +00:00
Henry Guo
738fb86611
fix(admin): surface access key policy errors ( #2970 )
...
Co-authored-by: houseme <housemecn@gmail.com >
Co-authored-by: loverustfs <hello@rustfs.com >
2026-05-15 08:26:38 +00:00
escapecode
5cda460451
fix(sftp): preserve OPEN-time client attrs as object metadata ( #2913 )
...
Co-authored-by: houseme <housemecn@gmail.com >
2026-05-15 00:32:06 +00:00
GatewayJ
fc8322ed64
bucket policy notify & pba ( #2968 )
2026-05-14 14:31:40 +00:00
houseme
81754d80b3
refactor(targets): unify queue/connectivity handling and coverage ( #2953 )
...
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com >
Co-authored-by: marshawcoco <marshawcoco@gmail.com >
2026-05-14 04:31:23 +00:00
Henry Guo
c1bcee327c
fix(notify): keep live listen events active when disabled ( #2952 )
...
Co-authored-by: houseme <housemecn@gmail.com >
2026-05-13 17:10:14 +00:00
weisd
4ea805cbc0
fix: preserve pagination when max keys exceed limit ( #2943 )
...
Co-authored-by: houseme <housemecn@gmail.com >
2026-05-13 12:48:38 +00:00
weisd
c5125b20bd
fix(storage): keep storage info RPC map encoded ( #2942 )
...
Co-authored-by: cxymds <Cxymds@qq.com >
2026-05-13 06:19:43 +00:00
houseme
d72b8cb88e
fix(server): fail fast when configured TLS parsing fails ( #2939 )
2026-05-13 04:16:39 +00:00
cxymds
8ef2c0a5e1
fix(storage): sync transition tier config across peers ( #2918 )
...
Co-authored-by: houseme <housemecn@gmail.com >
2026-05-11 15:23:29 +00:00
Henry Guo
aba65a448c
fix(protocols): encode storage client request URIs ( #2911 )
2026-05-11 10:47:30 +00:00
JaySon
bafff6d207
feat(targets): add check_mysql_server_available probe function ( #2884 )
...
Signed-off-by: JaySon-Huang <tshent@qq.com >
Co-authored-by: houseme <housemecn@gmail.com >
2026-05-10 11:53:45 +00:00
escapecode
96b293bf8a
feat(sftp): add SFTPv3 protocol support ( #2875 )
...
Co-authored-by: houseme <housemecn@gmail.com >
2026-05-10 03:48:42 +00:00
唐小鸭
09c2d15057
fix(sse): Temporarily refactored the SSE design for ECStore ( #2813 )
...
Co-authored-by: houseme <housemecn@gmail.com >
Co-authored-by: cxymds <Cxymds@qq.com >
2026-05-09 14:06:35 +00:00
Sergei Z.
6275918d92
fix: empty-body requests without content length ( #2888 )
...
Co-authored-by: houseme <housemecn@gmail.com >
Co-authored-by: OmX <omx@oh-my-codex.dev >
2026-05-09 14:05:53 +00:00
Henry Guo
5879d0b59d
fix(server): handle public health before s3 host parsing ( #2866 )
...
Co-authored-by: houseme <housemecn@gmail.com >
2026-05-09 13:15:37 +00:00
houseme
81ad48dac2
feat(targets): add AMQP support for notify and audit ( #2879 )
...
Co-authored-by: Hyesook Yun <74169420+suk13574@users.noreply.github.com >
2026-05-09 01:56:26 +00:00
安正超
61bd5698bb
test(admin): cover pools list response serialization ( #2862 )
...
Signed-off-by: houseme <housemecn@gmail.com >
Co-authored-by: houseme <housemecn@gmail.com >
2026-05-08 07:32:49 +00:00
安正超
fe978488a0
test(admin): cover pool used-size saturation ( #2863 )
2026-05-08 06:06:54 +00:00
cxymds
9d85b7d23a
feat: enrich admin pools list response ( #2853 )
...
Co-authored-by: houseme <housemecn@gmail.com >
2026-05-07 13:53:25 +00:00
houseme
5431b9273d
feat(targets): complete redis mysql postgres target wiring ( #2842 )
...
Signed-off-by: jaehanbyun <awbrg789@naver.com >
Signed-off-by: houseme <housemecn@gmail.com >
Signed-off-by: Gunther Xing <jiengup@gmail.com >
Signed-off-by: JaySon-Huang <tshent@qq.com >
Co-authored-by: jaehanbyun <awbrg789@naver.com >
Co-authored-by: Gunther Xing <jiengup@gmail.com >
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
Co-authored-by: cxymds <Cxymds@qq.com >
Co-authored-by: JaySon <tshent@qq.com >
Co-authored-by: 安正超 <anzhengchao@gmail.com >
2026-05-07 10:00:59 +00:00
安正超
b159d656cc
test(admin): cover POST content length compat layer ( #2844 )
...
Co-authored-by: houseme <housemecn@gmail.com >
2026-05-07 09:51:09 +00:00
houseme
f1cd7c1345
feat(rustfs): add ftps/webdav defaults to info output ( #2845 )
2026-05-07 04:39:56 +00:00
cxymds
06097a3c33
fix(admin): normalize empty admin POST content length ( #2843 )
2026-05-07 02:52:21 +00:00
GatewayJ
3130670157
test(object-lock): cover default retention delete marker ( #2836 )
2026-05-06 21:14:00 +00:00
安正超
4728abcff1
fix(security): document unsafe and TLS overrides ( #2835 )
2026-05-06 15:09:02 +00:00
GatewayJ
9e93d3f47a
fix(object-lock): materialize default retention metadata ( #2824 )
...
Signed-off-by: houseme <housemecn@gmail.com >
Co-authored-by: cxymds <Cxymds@qq.com >
Co-authored-by: loverustfs <hello@rustfs.com >
Co-authored-by: houseme <housemecn@gmail.com >
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
2026-05-06 13:48:12 +00:00
cxymds
9f07029373
fix: reload bucket metadata after lifecycle updates ( #2822 )
...
Co-authored-by: houseme <housemecn@gmail.com >
2026-05-06 13:01:44 +00:00
houseme
41ba34a145
fix(rpc): add issue 2815 regression and docker validation ( #2828 )
2026-05-06 12:22:13 +00:00
Michael Graff
3898d524fe
security: same-origin console CORS, fail-closed helm creds, deny.toml, sample-config hardening ( #2769 )
...
Signed-off-by: Michael Graff <explorer@flame.org >
Signed-off-by: 安正超 <anzhengchao@gmail.com >
Co-authored-by: 安正超 <anzhengchao@gmail.com >
Co-authored-by: loverustfs <hello@rustfs.com >
2026-05-06 07:34:44 +00:00
houseme
3dd0692917
refactor: unify credential env constants and deploy env usage ( #2821 )
...
Co-authored-by: Henry Guo <marshawcoco@gmail.com >
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com >
Co-authored-by: loverustfs <hello@rustfs.com >
Co-authored-by: 安正超 <anzhengchao@gmail.com >
2026-05-06 04:30:29 +00:00
GatewayJ
090d60e00a
fix(auth): authorize DeleteObjects per key ( #2814 )
2026-05-06 00:47:36 +00:00
安正超
c228fabfdb
test(admin): cover orphan resync status cleanup ( #2816 )
2026-05-06 00:47:11 +00:00
安正超
bde569d055
test(getobject): cover buffer threshold edge cases ( #2817 )
2026-05-06 00:47:02 +00:00
houseme
e19b0dd997
fix(notify): improve webhook target diagnostics for env setup ( #2810 )
2026-05-06 00:28:46 +00:00
安正超
bf893bcb55
fix(admin): clear removed site resync status ( #2803 )
2026-05-05 13:42:12 +00:00
houseme
565cbdffed
fix(getobject): prevent large-download memory buffering ( #2809 )
2026-05-05 12:58:26 +00:00
houseme
743b87014b
fix(notify): validate bucket notification filter rules ( #2806 )
2026-05-05 10:35:36 +00:00
安正超
3208f930c5
fix(s3): advertise byte ranges on head object ( #2802 )
2026-05-05 04:29:25 +00:00
cxymds
935bb8a8e2
fix(admin): allow site replication removal with offline peers ( #2739 )
...
Co-authored-by: loverustfs <hello@rustfs.com >
2026-05-05 03:54:32 +00:00
Henry Guo
0153710791
fix(server): avoid logging default credential values ( #2800 )
...
Co-authored-by: houseme <housemecn@gmail.com >
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com >
Co-authored-by: loverustfs <hello@rustfs.com >
Co-authored-by: 安正超 <anzhengchao@gmail.com >
2026-05-05 03:44:07 +00:00
Alexander Kharkevich
995e26f5ee
fix(rpc): use map-encoded msgpack for all internode RPC responses ( #2771 )
...
Co-authored-by: 安正超 <anzhengchao@gmail.com >
Co-authored-by: houseme <housemecn@gmail.com >
2026-05-05 03:42:29 +00:00
安正超
f016673416
test: cover license verifier success path ( #2798 )
2026-05-05 02:55:56 +00:00
安正超
42ff6b4d80
test(admin): cover legacy profile auth guards ( #2799 )
2026-05-05 02:55:45 +00:00
安正超
3ced40f221
test(license): cover public key validation ( #2793 )
2026-05-04 15:12:59 +00:00