Skip to content

Deduplicate benchmark downloads and propagate failures - #1030

Merged
GuyAv46 merged 2 commits into
mainfrom
fix/benchmark-downloads
Sep 7, 2026
Merged

Deduplicate benchmark downloads and propagate failures#1030
GuyAv46 merged 2 commits into
mainfrom
fix/benchmark-downloads

Conversation

@GuyAv46

@GuyAv46 GuyAv46 commented Sep 6, 2026

Copy link
Copy Markdown
Collaborator

The September 2 nightly timed out while downloading benchmark indices. The all-benchmarks path starts 73 downloads for 38 unique URLs with verbose progress output.

Deduplicate URLs and suppress progress output while retaining unlimited parallelism so larger runners can use their available bandwidth. Set a 60-second network timeout, three attempts, and a five-second retry wait. Enable strict shell error handling so failed downloads fail the step instead of being masked by exit 0.

Validation: shell syntax and whitespace checks; mocked downloads verified default/all and HNSW/SVS selections, one request per unique URL, download options, failure propagation in both paths, and no downloads for benchmarks without data. Rechecked deduplication and failure propagation after restoring unlimited parallelism. Full benchmark execution remains for CI.

Failure: https://github.com/RedisAI/VectorSimilarity/actions/runs/33677359784/job/100405740515


Note

Low Risk
CI/benchmark setup script only; no production or library behavior changes.

Overview
Refactors benchmark index fetching in bm_files.sh behind a shared download_indices helper used for both the all-benchmarks and single-suite paths.

URLs are merged from the index list files, blank lines dropped, and sort -u so each URL is fetched once while keeping parallel wget (-P 0). Downloads use quieter logging (--no-verbose), a 60s timeout, three tries with a 5s retry wait, and set -euo pipefail so a failed download fails the step instead of being hidden behind success exits elsewhere in the script.

Reviewed by Cursor Bugbot for commit 46646fc. Bugbot is set up for automated code reviews on this repo. Configure here.

@GuyAv46 GuyAv46 changed the title Fix benchmark index download concurrency and error handling Deduplicate benchmark downloads and propagate failures Sep 6, 2026
@codecov

codecov Bot commented Sep 6, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 97.40%. Comparing base (227e305) to head (46646fc).

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1030      +/-   ##
==========================================
- Coverage   97.43%   97.40%   -0.03%     
==========================================
  Files         141      141              
  Lines        8686     8686              
==========================================
- Hits         8463     8461       -2     
- Misses        223      225       +2     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@GuyAv46
GuyAv46 merged commit 5341ea0 into main Sep 7, 2026
18 of 22 checks passed
@GuyAv46
GuyAv46 deleted the fix/benchmark-downloads branch September 7, 2026 13:18
ethanglaser added a commit to ethanglaser/VectorSimilarity that referenced this pull request Sep 11, 2026
Brings in RedisAI#1028 (SQ8-FP32 L2), RedisAI#1033 (SVSIndex::getDataByLabel), RedisAI#1021
(FP16 dispatch), RedisAI#1030-RedisAI#1032 (CI). No textual conflicts; the semantic
fallout is fixed in the follow-up commit.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants