test(perf): reject zero-byte paired warp sizes (#5289)

* test(perf): tolerate empty paired runner node args

Co-Authored-By: heihutu <heihutu@gmail.com>

* test(perf): reject zero-byte paired warp sizes

Keep the #1432 pinned paired ABBA default matrix on positive object sizes because warp refuses zero-byte object generation. Add a dry-run guard so zero-byte compatibility stays a separate functional probe instead of failing mid-benchmark.

Co-Authored-By: heihutu <heihutu@gmail.com>

---------

Co-authored-by: heihutu <heihutu@gmail.com>
This commit is contained in:
houseme
2026-07-26 20:31:00 +08:00
committed by GitHub
parent 09a991e735
commit 7f0c42e2bb
2 changed files with 59 additions and 2 deletions
+41
View File
@@ -34,6 +34,47 @@ if "$RUNNER" \
exit 1
fi
if "$RUNNER" \
--access-key minioadmin \
--secret-key minioadmin \
--rustfs-endpoint http://127.0.0.1:9000 \
--rustfs-image-ref rustfs/rustfs:bench \
--rustfs-image-digest sha256:0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef \
--rustfs-revision 42fc84063 \
--rustfs-ack-contract relaxed \
--minio-endpoint http://127.0.0.1:9100 \
--minio-image-ref quay.io/minio/minio:RELEASE.2025-07-18T21-56-31Z \
--minio-image-digest sha256:1111222233334444111122223333444411112222333344441111222233334444 \
--minio-release RELEASE.2025-07-18T21-56-31Z \
--minio-ack-contract strict \
--sizes 0B \
--out-dir "$TMP_DIR/bad-zero-size" \
--dry-run >"$TMP_DIR/bad-zero-size.log" 2>&1; then
echo "expected warp zero-byte benchmark size to fail" >&2
exit 1
fi
rg -q "warp requires object size > 0" "$TMP_DIR/bad-zero-size.log"
"$RUNNER" \
--access-key minioadmin \
--secret-key minioadmin \
--rustfs-endpoint http://127.0.0.1:9000 \
--rustfs-image-ref rustfs/rustfs:bench \
--rustfs-image-digest sha256:0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef \
--rustfs-revision 42fc84063 \
--rustfs-ack-contract relaxed \
--minio-endpoint http://127.0.0.1:9100 \
--minio-image-ref quay.io/minio/minio:RELEASE.2025-07-18T21-56-31Z \
--minio-image-digest sha256:1111222233334444111122223333444411112222333344441111222233334444 \
--minio-release RELEASE.2025-07-18T21-56-31Z \
--minio-ack-contract strict \
--concurrencies 1 \
--sizes 1048576B \
--rounds-per-leg 1 \
--cooldown-secs 0 \
--out-dir "$TMP_DIR/good-no-optional-arrays" \
--dry-run >"$TMP_DIR/dry-run-no-optional-arrays.log"
"$RUNNER" \
--access-key minioadmin \
--secret-key minioadmin \