mirror of
https://github.com/rustfs/rustfs.git
synced 2026-08-30 16:59:52 +00:00
fix(ci): accept equal below-resolution Warp latency
This commit is contained in:
@@ -1322,10 +1322,21 @@ compare_baseline() {
|
|||||||
|
|
||||||
dr="N/A"; dl="N/A"; dt="N/A"; dp90="N/A"; dp99="N/A"; ne="N/A"; be="N/A"; de="N/A"
|
dr="N/A"; dl="N/A"; dt="N/A"; dp90="N/A"; dp99="N/A"; ne="N/A"; be="N/A"; de="N/A"
|
||||||
if (br!="N/A" && n_req!="N/A" && br+0!=0) dr=sprintf("%.2f", ((n_req-br)/br)*100)
|
if (br!="N/A" && n_req!="N/A" && br+0!=0) dr=sprintf("%.2f", ((n_req-br)/br)*100)
|
||||||
if (bl!="N/A" && n_lat!="N/A" && bl+0!=0) dl=sprintf("%.2f", ((n_lat-bl)/bl)*100)
|
if (bl!="N/A" && n_lat!="N/A") {
|
||||||
|
if (bl+0!=0) dl=sprintf("%.2f", ((n_lat-bl)/bl)*100)
|
||||||
|
else if (n_lat+0==0) dl="0.00"
|
||||||
|
}
|
||||||
if (bt!="N/A" && n_thr!="N/A" && bt+0!=0) dt=sprintf("%.2f", ((n_thr-bt)/bt)*100)
|
if (bt!="N/A" && n_thr!="N/A" && bt+0!=0) dt=sprintf("%.2f", ((n_thr-bt)/bt)*100)
|
||||||
if (bp90!="N/A" && n_p90!="N/A" && bp90+0!=0) dp90=sprintf("%.2f", ((n_p90-bp90)/bp90)*100)
|
# Warp v1 rounds sub-millisecond latency to 0s. Two zero readings are
|
||||||
if (bp99!="N/A" && n_p99!="N/A" && bp99+0!=0) dp99=sprintf("%.2f", ((n_p99-bp99)/bp99)*100)
|
# the same below-resolution bucket; a nonzero candidate remains invalid.
|
||||||
|
if (bp90!="N/A" && n_p90!="N/A") {
|
||||||
|
if (bp90+0!=0) dp90=sprintf("%.2f", ((n_p90-bp90)/bp90)*100)
|
||||||
|
else if (n_p90+0==0) dp90="0.00"
|
||||||
|
}
|
||||||
|
if (bp99!="N/A" && n_p99!="N/A") {
|
||||||
|
if (bp99+0!=0) dp99=sprintf("%.2f", ((n_p99-bp99)/bp99)*100)
|
||||||
|
else if (n_p99+0==0) dp99="0.00"
|
||||||
|
}
|
||||||
if (n_ok!="N/A" && n_fail!="N/A" && n_ok+n_fail>0) ne=sprintf("%.2f", (n_fail/(n_ok+n_fail))*100)
|
if (n_ok!="N/A" && n_fail!="N/A" && n_ok+n_fail>0) ne=sprintf("%.2f", (n_fail/(n_ok+n_fail))*100)
|
||||||
if (bok!="N/A" && bfail!="N/A" && bok+bfail>0) be=sprintf("%.2f", (bfail/(bok+bfail))*100)
|
if (bok!="N/A" && bfail!="N/A" && bok+bfail>0) be=sprintf("%.2f", (bfail/(bok+bfail))*100)
|
||||||
if (ne!="N/A" && be!="N/A") de=sprintf("%.2f", ne-be)
|
if (ne!="N/A" && be!="N/A") de=sprintf("%.2f", ne-be)
|
||||||
|
|||||||
@@ -76,6 +76,15 @@ cat >"$FAKE_WARP" <<'EOF'
|
|||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
[[ " $* " == *" --analyze.v "* ]]
|
[[ " $* " == *" --analyze.v "* ]]
|
||||||
[[ " $* " == *" --no-color "* ]]
|
[[ " $* " == *" --no-color "* ]]
|
||||||
|
if [[ "${FAKE_WARP_ZERO_LATENCY:-0}" == "1" ]]; then
|
||||||
|
cat <<'LOG'
|
||||||
|
Operation: GET. Concurrency: 8. Ran: 7s
|
||||||
|
Requests considered: 1000:
|
||||||
|
* Average: 160.00 MiB/s, 40960.00 obj/s
|
||||||
|
* Avg: 0s, 50%: 0s, 90%: 0s, 99%: 0s, Fastest: 0s, Slowest: 1ms, StdDev: 0s
|
||||||
|
LOG
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
cat <<'LOG'
|
cat <<'LOG'
|
||||||
- PUT Average: 161 Obj/s, 5.0MiB/s; Current 161 Obj/s, 5.0MiB/s.
|
- PUT Average: 161 Obj/s, 5.0MiB/s; Current 161 Obj/s, 5.0MiB/s.
|
||||||
Operation: GET. Concurrency: 64. Ran: 7s
|
Operation: GET. Concurrency: 64. Ran: 7s
|
||||||
@@ -164,4 +173,28 @@ awk -F',' '
|
|||||||
END { exit found ? 0 : 1 }
|
END { exit found ? 0 : 1 }
|
||||||
' "${TMP_DIR}/fake-warp-candidate/baseline_compare.csv"
|
' "${TMP_DIR}/fake-warp-candidate/baseline_compare.csv"
|
||||||
|
|
||||||
|
for leg in baseline candidate; do
|
||||||
|
zero_args=(
|
||||||
|
--tool warp
|
||||||
|
--endpoint http://127.0.0.1:9000
|
||||||
|
--access-key test-access
|
||||||
|
--secret-key test-secret
|
||||||
|
--sizes 4KiB
|
||||||
|
--rounds 1
|
||||||
|
--retry-per-round 1
|
||||||
|
--cooldown-secs 0
|
||||||
|
--duration 1s
|
||||||
|
--out-dir "${TMP_DIR}/fake-warp-zero-${leg}"
|
||||||
|
--warp-bin "$FAKE_WARP"
|
||||||
|
)
|
||||||
|
if [[ "$leg" == "candidate" ]]; then
|
||||||
|
zero_args+=(--baseline-csv "${TMP_DIR}/fake-warp-zero-baseline/median_summary.csv")
|
||||||
|
fi
|
||||||
|
FAKE_WARP_ZERO_LATENCY=1 "$RUNNER" "${zero_args[@]}" >/dev/null 2>&1
|
||||||
|
done
|
||||||
|
|
||||||
|
"${SCRIPT_DIR}/hotpath_warp_ab_gate.sh" \
|
||||||
|
--compare-csv "${TMP_DIR}/fake-warp-zero-candidate/baseline_compare.csv" \
|
||||||
|
--require-tail-error >/dev/null
|
||||||
|
|
||||||
echo "object batch benchmark enhanced tests passed"
|
echo "object batch benchmark enhanced tests passed"
|
||||||
|
|||||||
Reference in New Issue
Block a user