唐小鸭
4efefd67b5
fix(site-replication): site replication flag issue and resolved the replication storm ( #4120 )
...
* fix(site-replication): Add Docker Compose setup for site replication testing
- Fixed the site replication flag issue and resolved the replication storm.
- Introduced a new directory for site replication tests with Docker Compose.
- Created `docker-compose.yml` to define three RustFS sites and a setup container.
- Added `README.md` to document the purpose, usage, and test flow of the replication setup.
- Implemented `run-object-flow-check.sh` script to verify object replication across sites.
- Configured health checks and volume permissions for the RustFS containers.
- Enabled customization of access keys, bucket names, and other parameters via environment variables.
* fix
* fix
2026-06-30 21:52:06 +08:00
Henry Guo
5e68455eed
test(table-catalog): add disaster recovery rehearsal probes ( #4119 )
...
Co-authored-by: Henry Guo <marshawcoco@users.noreply.github.com >
2026-06-30 21:27:06 +08:00
Zhengchao An
da7f421f69
refactor(ecstore): route replication storage contracts ( #4118 )
2026-06-30 20:12:06 +08:00
cxymds
f9340da74a
fix(lifecycle): harden S3 lifecycle rule handling ( #4115 )
...
* fix(lifecycle): honor noncurrent version retention
* fix(lifecycle): validate transition rules
* fix(lifecycle): support immediate multipart abort
* fix(lifecycle): harden select restore metadata
* fix(lifecycle): expose stale multipart cleanup to app
* fix(lifecycle): reduce expiry helper arguments
2026-06-30 19:06:34 +08:00
wood
7484a61fa3
feat(compression): show cluster-level compression stat in grafana ( #4112 )
2026-06-30 19:05:05 +08:00
Henry Guo
cfb24b31ea
test(table-catalog): add live client conformance harness ( #4110 )
...
Co-authored-by: Henry Guo <marshawcoco@users.noreply.github.com >
2026-06-30 16:33:14 +08:00
Zhengchao An
70a1f37508
refactor(ecstore): route replication target types ( #4114 )
2026-06-30 16:29:05 +08:00
cxymds
c67eea7bfa
fix(ecstore): preserve rename data rollback metadata ( #4107 )
2026-06-30 15:45:27 +08:00
Zhengchao An
20919f0b97
refactor(ecstore): route replication bandwidth wrapping ( #4113 )
2026-06-30 15:42:04 +08:00
Zhengchao An
b0dbf35cd4
refactor(ecstore): route lifecycle metadata reads ( #4111 )
2026-06-30 15:22:12 +08:00
Zhengchao An
4538919efa
refactor(ecstore): route runtime getters through facade ( #4109 )
2026-06-30 14:32:01 +08:00
Zhengchao An
143833ec45
test(architecture): guard rustfs owner statics ( #4108 )
2026-06-30 14:01:19 +08:00
houseme
22c7cb1923
feat(ecstore): refresh issue-787 phase-3 validation track ( #4106 )
...
* feat: isolate list objects quorum config
* perf: add list gather observability for issue-785
* feat: add list-path observability for storage layers
* chore: add issue 785 list observability acceptance runner
* fix: avoid moved fields in list_path logging
* test: add marker replay idempotence checks for list pagination
* feat(ecstore): add list marker v2 cache id
* Revert "feat(ecstore): add list marker v2 cache id"
This reverts commit 980c364e02 .
* Reapply "feat(ecstore): add list marker v2 cache id"
This reverts commit 766d2cee65 .
* feat(ecstore): propagate list cache cursor in list layers
* test: add versioned continuation fallback tests
* test: add live pagination continuity smoke mode
* chore: run cargo fmt on issue-4003 branch
* build: fix bash3 compatibility in live smoke
* test(ecstore): simplify bool marker test assertion
* refactor(ecstore): unify list pagination state machine
* test: add issue 787 quorum validation runner
* build: support bash32 in issue-787 runner
* docs: add issue-787 benchmark evidence
2026-06-30 11:37:44 +08:00
GatewayJ
4815d608a2
fix(ecstore): preserve recovery quorum identity ( #3937 )
...
* fix(ecstore): preserve recovery quorum identity
* fix(get): hold read permits through response streaming
* fix(heal): queue read repair at low priority
* fix(ecstore): harden recovery read validation
2026-06-30 11:19:46 +08:00
Zhengchao An
7041d60cbf
refactor(storage): narrow root runtime facade ( #4105 )
2026-06-30 11:19:21 +08:00
Zhengchao An
f6689f5b39
test(app): remove object store fallback ( #4104 )
2026-06-30 08:08:54 +08:00
Zhengchao An
27e1cb5ffd
refactor(storage): narrow object store resolver boundary ( #4103 )
2026-06-30 07:56:36 +08:00
Zhengchao An
9a8a82e90c
test(architecture): guard owner cache globals ( #4102 )
2026-06-30 07:17:51 +08:00
Zhengchao An
733904deb1
test(architecture): guard owner runtime globals ( #4101 )
2026-06-30 06:54:07 +08:00
Zhengchao An
f0d27982e5
refactor(app): collapse transition stats boundary ( #4100 )
2026-06-30 06:48:09 +08:00
Zhengchao An
46edc118f0
refactor(app): add lifecycle state context boundary ( #4099 )
2026-06-30 06:26:06 +08:00
Zhengchao An
055d3ad825
refactor(ecstore): scope dead code allowances ( #4098 )
2026-06-30 06:07:45 +08:00
Zhengchao An
de19342744
refactor(runtime): finish legacy global naming ( #4097 )
2026-06-30 05:50:58 +08:00
Zhengchao An
74aef760f0
refactor(lifecycle): normalize state global names ( #4096 )
2026-06-30 05:29:10 +08:00
Zhengchao An
cbd527cd6e
refactor(runtime): normalize legacy global names ( #4095 )
2026-06-30 05:13:06 +08:00
Zhengchao An
90f9c24503
refactor(runtime): clean scalar globals ( #4094 )
2026-06-30 04:52:23 +08:00
Zhengchao An
77e45896ba
refactor(runtime): remove unused node names global ( #4093 )
2026-06-30 04:44:17 +08:00
Zhengchao An
c279d34af6
refactor(runtime): batch owner boundary guards ( #4092 )
2026-06-30 04:34:54 +08:00
Zhengchao An
19dc019038
test(runtime): guard kms service manager global ( #4086 )
2026-06-30 04:17:24 +08:00
Zhengchao An
90ea66423e
test(runtime): guard internode transport global ( #4085 )
2026-06-30 04:11:30 +08:00
Zhengchao An
47b12972ad
refactor(lifecycle): add object lock boundary ( #4084 )
2026-06-30 04:11:03 +08:00
houseme
3d868cb6e8
perf: add list objects quorum tuning knob ( #4072 )
2026-06-30 03:41:29 +08:00
Zhengchao An
3b754f649d
test(runtime): guard batch processor global ( #4083 )
2026-06-30 03:40:03 +08:00
Zhengchao An
f99429f2f2
refactor(lifecycle): add tagging boundary ( #4082 )
2026-06-30 03:39:32 +08:00
Zhengchao An
fb7bcfb541
refactor(replication): add tagging boundary ( #4081 )
2026-06-30 03:39:17 +08:00
Zhengchao An
4f335889c1
refactor(lifecycle): add config persistence boundary ( #4080 )
2026-06-30 02:10:12 +08:00
Zhengchao An
fab78f8402
refactor(scanner): use expiry runtime boundary ( #4079 )
2026-06-30 02:09:52 +08:00
Zhengchao An
35d7d6bf23
refactor(ecstore): wrap background cancel token access ( #4078 )
2026-06-30 02:09:39 +08:00
Zhengchao An
d3a84395dc
refactor(replication): add msgp boundary ( #4076 )
2026-06-30 02:09:14 +08:00
Zhengchao An
74c95920ca
fix: dual-write renamed IO metrics ( #4077 )
2026-06-30 02:08:58 +08:00
Zhengchao An
f401a4388e
fix(ecstore): tolerate OnceLock re-initialization in tests ( #4074 )
2026-06-30 00:18:28 +08:00
Zhengchao An
c17df6e3d3
refactor(replication): add lock boundary ( #4075 )
2026-06-30 00:18:08 +08:00
Zhengchao An
50ca1c2cbe
refactor(replication): add config store boundary ( #4073 )
2026-06-30 00:03:45 +08:00
Zhengchao An
f8c70e017d
refactor(replication): add versioning boundary ( #4071 )
2026-06-29 23:52:36 +08:00
Zhengchao An
04e8c1bb6b
refactor(replication): add metadata boundary ( #4070 )
2026-06-29 23:24:39 +08:00
Zhengchao An
f1ec0bd765
refactor(replication): add target boundary ( #4069 )
2026-06-29 22:59:10 +08:00
Zhengchao An
c94f2981d7
refactor(replication): add event sink boundary ( #4068 )
2026-06-29 22:46:06 +08:00
Zhengchao An
13474ec1de
refactor(replication): add runtime boundary ( #4067 )
2026-06-29 22:34:10 +08:00
Zhengchao An
e9a89e13ae
refactor(lifecycle): route events through audit sink ( #4066 )
2026-06-29 22:21:23 +08:00
Zhengchao An
806dfb233c
test(ecstore): guard set disks contract coverage ( #4065 )
2026-06-29 22:06:21 +08:00