Zhengchao An
953a080b37
refactor(replication): move runtime sizing contracts ( #4169 )
2026-07-02 12:33:11 +08:00
Zhengchao An
473132f36b
refactor(replication): move stats contracts into crate ( #4168 )
2026-07-02 12:14:36 +08:00
Zhengchao An
8ce0f824cf
refactor(replication): move queue contracts into crate ( #4167 )
2026-07-02 11:40:49 +08:00
Zhengchao An
2cf856a51d
Move replication delete worker contract into crate ( #4166 )
...
refactor(replication): move delete worker contract into crate
2026-07-02 11:03:24 +08:00
Zhengchao An
df6ce41acd
Move replication operation contracts into crate ( #4165 )
...
refactor(replication): move operation contracts into crate
2026-07-02 10:48:02 +08:00
Zhengchao An
b57820a486
refactor(replication): move config contracts into crate ( #4162 )
2026-07-02 10:17:48 +08:00
Zhengchao An
18b79ccc2a
refactor(replication): route filemeta paths through crate ( #4161 )
2026-07-02 09:08:47 +08:00
houseme
7a075c91da
perf: avoid eager parity reader setup ( #4133 )
2026-07-02 08:49:08 +08:00
Zhengchao An
18d89d1e31
refactor(replication): route metadata contracts through crate ( #4160 )
2026-07-02 08:48:42 +08:00
Zhengchao An
0f4f4a6367
fix(replication): avoid target status map allocation ( #4159 )
2026-07-02 05:08:42 +08:00
Zhengchao An
e05c281176
refactor(replication): centralize object replication state parsing ( #4158 )
...
* refactor(replication): centralize object replication state parsing
* fix(replication): gate test-only msgpack import
2026-07-02 04:41:54 +08:00
Zhengchao An
2de38d3e5c
refactor(replication): move mrf wire format to replication crate ( #4157 )
...
* refactor(replication): move mrf wire format to replication crate
* refactor(replication): match re-exported error variants
2026-07-02 04:27:53 +08:00
Zhengchao An
8f01012071
fix(replication): address resync review follow-up ( #4155 )
...
* fix(replication): address resync crate review
* fix(replication): skip fixext fields correctly
* fix(replication): satisfy resync clippy
2026-07-02 04:00:28 +08:00
Zhengchao An
e80391f1aa
refactor(replication): extract resync contracts crate ( #4154 )
2026-07-02 01:30:01 +08:00
GatewayJ
7728c9f203
fix(ecstore): require commit quorum for latest metadata ( #4117 )
2026-07-02 00:41:11 +08:00
Zhengchao An
14016dbe8c
refactor(scanner): hide replication queue DTOs ( #4150 )
2026-07-02 00:17:03 +08:00
Zhengchao An
644a472e52
refactor(obs): hide replication stats handle ( #4149 )
2026-07-01 23:37:23 +08:00
Zhengchao An
2f5e4a8de4
fix: auto-repair breaking changes from a2ec13ab0 ( #4148 )
2026-07-01 23:16:52 +08:00
GatewayJ
f7769884ff
fix(lifecycle): honor expired delete marker semantics ( #4124 )
2026-07-01 22:31:08 +08:00
GatewayJ
a60b6310a7
fix(lifecycle): block actions on replication state ( #4125 )
2026-07-01 22:31:00 +08:00
Zhengchao An
22cbd41ee9
refactor(ecstore): add replication owner bridges ( #4141 )
...
* refactor(ecstore): add replication owner bridges
* fix(ecstore): tighten replication owner guards
2026-07-01 21:51:26 +08:00
Zhengchao An
c0dfc260ca
refactor(ecstore): add replication object bridge ( #4140 )
2026-07-01 19:24:20 +08:00
Zhengchao An
e5ab6ee8e4
refactor(ecstore): make replication facade explicit ( #4139 )
2026-07-01 18:54:05 +08:00
Zhengchao An
fc806679fb
refactor(ecstore): add replication work bridges ( #4137 )
2026-07-01 18:37:01 +08:00
Zhengchao An
28e87c1cab
refactor(ecstore): name replication boundary contracts ( #4134 )
2026-07-01 17:55:12 +08:00
Zhengchao An
f5adb5abc1
fix: bypass OnceLock in test for metadata early-stop gates ( #4135 )
2026-07-01 17:51:06 +08:00
houseme
b16120dbcc
feat: optimize small GET read paths ( #4022 )
2026-07-01 15:40:00 +08:00
Zhengchao An
b0f491549a
refactor(ecstore): hide replication runtime types ( #4131 )
2026-07-01 15:39:02 +08:00
Zhengchao An
8fd532ebb7
refactor(ecstore): use local replication paths ( #4130 )
2026-07-01 15:08:26 +08:00
Zhengchao An
7cb42529fc
refactor(ecstore): route replication config access ( #4128 )
2026-07-01 09:30:25 +08:00
cxymds
6e5c58ca3f
fix(replication): harden bucket replication correctness ( #4116 )
2026-07-01 09:21:30 +08:00
Zhengchao An
722c0805ce
refactor(ecstore): route replication errors ( #4127 )
2026-07-01 08:13:57 +08:00
Zhengchao An
50a3ed8bf3
refactor(ecstore): route replication event host ( #4126 )
2026-07-01 06:00:50 +08:00
Zhengchao An
e917f1f4be
refactor(ecstore): route replication filemeta contracts ( #4122 )
2026-07-01 01:01:01 +08:00
Zhengchao An
942a8b505d
refactor(ecstore): route replication metadata paths ( #4121 )
2026-06-30 22:48:34 +08:00
唐小鸭
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
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
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
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
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