Skip to content

Conversation

@hsanjuan
Copy link
Contributor

As seen in ipfs/go-ds-crdt#285, and mentioned in #865, the don't have timeout for very low latency setups becomes very low (2.5ms) and cannot handle any sort of spike.

In a localhost network with two peers, this causes loss of bitswap connectivity altogether, and is unrecoverable without manually reconnecting, or finding the other peer as provider.

Why 200ms? Didn't seem to low nor too high.

@hsanjuan hsanjuan requested a review from a team as a code owner June 22, 2025 08:46
@hsanjuan hsanjuan self-assigned this Jun 22, 2025
@hsanjuan hsanjuan force-pushed the bitswap-min-donthave-timeout branch from d9f3be7 to 65054e3 Compare June 22, 2025 08:48
@hsanjuan
Copy link
Contributor Author

(i will fix the tests)

hsanjuan added 2 commits June 24, 2025 14:07
As seen in ipfs/go-ds-crdt#285, and mentioned in
#865, the don't have timeout for very low
latency setups becomes very low (2.5ms) and cannot handle any sort of spike.

In a localhost network with two peers, this causes loss of bitswap
connectivity altogether, and is unrecoverable without manually reconnecting,
or finding the other peer as provider.

Why 200ms? Didn't seem to low nor too high.
@hsanjuan hsanjuan force-pushed the bitswap-min-donthave-timeout branch from 39b92d3 to 2fc8a75 Compare June 24, 2025 12:07
@codecov
Copy link

codecov bot commented Jun 24, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 61.61%. Comparing base (5dbf84e) to head (faa4995).
Report is 5 commits behind head on main.

Impacted file tree graph

@@            Coverage Diff             @@
##             main     #959      +/-   ##
==========================================
- Coverage   61.61%   61.61%   -0.01%     
==========================================
  Files         254      253       -1     
  Lines       31396    31374      -22     
==========================================
- Hits        19346    19331      -15     
+ Misses      10479    10475       -4     
+ Partials     1571     1568       -3     
Files with missing lines Coverage Δ
...client/internal/messagequeue/donthavetimeoutmgr.go 94.11% <100.00%> (+2.29%) ⬆️

... and 14 files with indirect coverage changes

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

@guillaumemichel
Copy link
Contributor

Triage notes:

  • Let's update the value to 25ms

@hsanjuan
Copy link
Contributor Author

Merging per discussion in triage.

@hsanjuan hsanjuan merged commit 44137d7 into main Jun 25, 2025
21 of 22 checks passed
@gammazero gammazero deleted the bitswap-min-donthave-timeout branch June 30, 2025 17:25
@lidel lidel changed the title Bitswap: Set DontHaveTimeout/MinTimeout to 200ms. Bitswap: Set DontHaveTimeout/MinTimeout to 25ms Jul 7, 2025
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.

3 participants