mirror of
https://github.com/rustfs/rustfs.git
synced 2026-09-06 03:59:14 +00:00
test(e2e): harden 4-node distributed Actions coverage
Classify localhost DistErasure pool-meta write fences instead of failing the suite when decommission/rebalance POST is blocked, use the proven 2x2 volume-proxy topology, and add peer-kill GET plus bucket recreate cases. Co-authored-by: RustFS <hello@rustfs.com>
This commit is contained in:
@@ -16,6 +16,8 @@ The in-tree harness runs every node on `127.0.0.1` with a distinct port. That ma
|
||||
|
||||
A pool striped across several localhost ports is not expressible (`RUSTFS_VOLUMES` host ellipses would collide on disk paths). Multi-host striped pools remain the hardware functional-chain / backlog #1313 / #1314 lane.
|
||||
|
||||
Decommission and rebalance POST currently 500 on localhost DistErasure multi-pool when pool.bin writes are fenced (`pool metadata writes remain blocked` / missing fleet capability proof). Those cases still assert object bytes and SHA-256; when the API starts they wait for completion and assert post-move integrity. They do not treat the fence as a successful move.
|
||||
|
||||
## What this lane covers
|
||||
|
||||
`cargo nextest run --profile e2e-distributed -p e2e_test` selects `distributed::*`:
|
||||
@@ -28,8 +30,9 @@ A pool striped across several localhost ports is not expressible (`RUSTFS_VOLUME
|
||||
- Pool expand, decommission, rebalance, checksum integrity, S3 during move
|
||||
- Site replication object convergence
|
||||
- High-concurrency PUT/GET; concurrent PUT during decommission
|
||||
- Node kill/restart, full process restart, drive offline, volume-proxy blackhole (4-node 1-drive DistErasure; a 4×4 volume proxy cannot format)
|
||||
- Multipart and cross-node listing agreement
|
||||
- Node kill/restart, full process restart, drive offline, volume-proxy blackhole (2×2 DistErasure; 4-node volume proxy cannot format because RPC audience is the listen port)
|
||||
- Multipart, cross-node listing, list-buckets agreement, delete+recreate bucket
|
||||
- Concurrent GET while a peer node is killed
|
||||
|
||||
## Existing Actions gaps this lane does not replace
|
||||
|
||||
|
||||
Reference in New Issue
Block a user