Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

p2p: intervals when re-dialing persistent peers are not as expected #3519

Closed
cason opened this issue Jul 15, 2024 · 0 comments · Fixed by #4377
Closed

p2p: intervals when re-dialing persistent peers are not as expected #3519

cason opened this issue Jul 15, 2024 · 0 comments · Fixed by #4377
Assignees
Labels
Milestone

Comments

@cason
Copy link
Collaborator

cason commented Jul 15, 2024

The method used for dialing addresses configured as persistent peers is the following:

cometbft/p2p/switch.go

Lines 391 to 438 in b47d18e

func (sw *Switch) reconnectToPeer(addr *NetAddress) {
if sw.reconnecting.Has(string(addr.ID)) {
return
}
sw.reconnecting.Set(string(addr.ID), addr)
defer sw.reconnecting.Delete(string(addr.ID))
start := time.Now()
sw.Logger.Info("Reconnecting to peer", "addr", addr)
for i := 0; i < reconnectAttempts; i++ {
if !sw.IsRunning() {
return
}
err := sw.DialPeerWithAddress(addr)
if err == nil {
return // success
} else if _, ok := err.(ErrCurrentlyDialingOrExistingAddress); ok {
return
}
sw.Logger.Info("Error reconnecting to peer. Trying again", "tries", i, "err", err, "addr", addr)
// sleep a set amount
sw.randomSleep(reconnectInterval)
continue
}
sw.Logger.Error("Failed to reconnect to peer. Beginning exponential backoff",
"addr", addr, "elapsed", time.Since(start))
for i := 0; i < reconnectBackOffAttempts; i++ {
if !sw.IsRunning() {
return
}
// sleep an exponentially increasing amount
sleepIntervalSeconds := math.Pow(reconnectBackOffBaseSeconds, float64(i))
sw.randomSleep(time.Duration(sleepIntervalSeconds) * time.Second)
err := sw.DialPeerWithAddress(addr)
if err == nil {
return // success
} else if _, ok := err.(ErrCurrentlyDialingOrExistingAddress); ok {
return
}
sw.Logger.Info("Error reconnecting to peer. Trying again", "tries", i, "err", err, "addr", addr)
}
sw.Logger.Error("Failed to reconnect to peer. Giving up", "addr", addr, "elapsed", time.Since(start))
}

According with the comments in the code, and some of our documentation, the total duration of re-connection attempts should be around 1 day:

cometbft/p2p/switch.go

Lines 23 to 31 in b47d18e

// repeatedly try to reconnect for a few minutes
// ie. 5 * 20 = 100s.
reconnectAttempts = 20
reconnectInterval = 5 * time.Second
// then move into exponential backoff mode for ~1day
// ie. 3**10 = 16hrs.
reconnectBackOffAttempts = 10
reconnectBackOffBaseSeconds = 3

But, from this snap of the code, derived from the previous one, the total interval between the configured attempts (30) is actually around 8h14m: https://go.dev/play/p/JWfU6lerps5.

Namely, the expected behavior does not match the implemented behavior.

@cason cason added the p2p label Jul 15, 2024
@cason cason added this to CometBFT Jul 15, 2024
@github-project-automation github-project-automation bot moved this to Todo in CometBFT Jul 15, 2024
@andynog andynog self-assigned this Aug 19, 2024
@andynog andynog added this to the 2024-Q3 milestone Aug 19, 2024
@andynog andynog modified the milestones: 2024-Q3, 2024-Q4 Sep 23, 2024
andynog added a commit that referenced this issue Oct 31, 2024
andynog added a commit that referenced this issue Oct 31, 2024
github-merge-queue bot pushed a commit that referenced this issue Nov 4, 2024
…to 24 hours (#4377)

close: #3519 

Adjust `reconnectBackOffBaseSeconds` to increase reconnect retries to up
1 day (~24 hours).

The new value can be validated here: https://go.dev/play/p/k8F5rS-i24p,
which will show that the total time is increased to almost 24 hours.

Initial reconnecting time: 2m8.493s
Total reconnecting time. : 23h55m56.249s

The `reconnectBackOffBaseSeconds` is increased by a bit over 10% (from
3.0 to 3.4 seconds) so this would not affect reconnection retries too
much.

#### PR checklist

- [ ] ~~Tests written/updated~~
- [x] Changelog entry added in `.changelog` (we use
[unclog](https://github.com/informalsystems/unclog) to manage our
changelog)
- [x] Updated relevant documentation (`docs/` or `spec/`) and code
comments

---------

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Co-authored-by: Daniel <daniel.cason@informal.systems>
@github-project-automation github-project-automation bot moved this from Todo to Done in CometBFT Nov 4, 2024
mergify bot pushed a commit that referenced this issue Nov 4, 2024
…to 24 hours (#4377)

close: #3519

Adjust `reconnectBackOffBaseSeconds` to increase reconnect retries to up
1 day (~24 hours).

The new value can be validated here: https://go.dev/play/p/k8F5rS-i24p,
which will show that the total time is increased to almost 24 hours.

Initial reconnecting time: 2m8.493s
Total reconnecting time. : 23h55m56.249s

The `reconnectBackOffBaseSeconds` is increased by a bit over 10% (from
3.0 to 3.4 seconds) so this would not affect reconnection retries too
much.

#### PR checklist

- [ ] ~~Tests written/updated~~
- [x] Changelog entry added in `.changelog` (we use
[unclog](https://github.com/informalsystems/unclog) to manage our
changelog)
- [x] Updated relevant documentation (`docs/` or `spec/`) and code
comments

---------

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Co-authored-by: Daniel <daniel.cason@informal.systems>
(cherry picked from commit 81f2763)
mergify bot pushed a commit that referenced this issue Nov 4, 2024
…to 24 hours (#4377)

close: #3519

Adjust `reconnectBackOffBaseSeconds` to increase reconnect retries to up
1 day (~24 hours).

The new value can be validated here: https://go.dev/play/p/k8F5rS-i24p,
which will show that the total time is increased to almost 24 hours.

Initial reconnecting time: 2m8.493s
Total reconnecting time. : 23h55m56.249s

The `reconnectBackOffBaseSeconds` is increased by a bit over 10% (from
3.0 to 3.4 seconds) so this would not affect reconnection retries too
much.

#### PR checklist

- [ ] ~~Tests written/updated~~
- [x] Changelog entry added in `.changelog` (we use
[unclog](https://github.com/informalsystems/unclog) to manage our
changelog)
- [x] Updated relevant documentation (`docs/` or `spec/`) and code
comments

---------

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Co-authored-by: Daniel <daniel.cason@informal.systems>
(cherry picked from commit 81f2763)

# Conflicts:
#	.changelog/v0.38.8/improvements/3519-p2p-reconnect-interval-1day.md
mergify bot pushed a commit that referenced this issue Nov 4, 2024
…to 24 hours (#4377)

close: #3519

Adjust `reconnectBackOffBaseSeconds` to increase reconnect retries to up
1 day (~24 hours).

The new value can be validated here: https://go.dev/play/p/k8F5rS-i24p,
which will show that the total time is increased to almost 24 hours.

Initial reconnecting time: 2m8.493s
Total reconnecting time. : 23h55m56.249s

The `reconnectBackOffBaseSeconds` is increased by a bit over 10% (from
3.0 to 3.4 seconds) so this would not affect reconnection retries too
much.

#### PR checklist

- [ ] ~~Tests written/updated~~
- [x] Changelog entry added in `.changelog` (we use
[unclog](https://github.com/informalsystems/unclog) to manage our
changelog)
- [x] Updated relevant documentation (`docs/` or `spec/`) and code
comments

---------

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Co-authored-by: Daniel <daniel.cason@informal.systems>
(cherry picked from commit 81f2763)

# Conflicts:
#	.changelog/v0.37.7/improvements/3519-p2p-reconnect-interval-1day.md
mergify bot added a commit that referenced this issue Nov 4, 2024
…to 24 hours (backport #4377) (#4424)

close: #3519 

Adjust `reconnectBackOffBaseSeconds` to increase reconnect retries to up
1 day (~24 hours).

The new value can be validated here: https://go.dev/play/p/k8F5rS-i24p,
which will show that the total time is increased to almost 24 hours.

Initial reconnecting time: 2m8.493s
Total reconnecting time. : 23h55m56.249s

The `reconnectBackOffBaseSeconds` is increased by a bit over 10% (from
3.0 to 3.4 seconds) so this would not affect reconnection retries too
much.

#### PR checklist

- [ ] ~~Tests written/updated~~
- [x] Changelog entry added in `.changelog` (we use
[unclog](https://github.com/informalsystems/unclog) to manage our
changelog)
- [x] Updated relevant documentation (`docs/` or `spec/`) and code
comments
<hr>This is an automatic backport of pull request #4377 done by
[Mergify](https://mergify.com).

---------

Co-authored-by: Andy Nogueira <me@andynogueira.dev>
mergify bot added a commit that referenced this issue Nov 4, 2024
…to 24 hours (backport #4377) (#4425)

close: #3519 

Adjust `reconnectBackOffBaseSeconds` to increase reconnect retries to up
1 day (~24 hours).

The new value can be validated here: https://go.dev/play/p/k8F5rS-i24p,
which will show that the total time is increased to almost 24 hours.

Initial reconnecting time: 2m8.493s
Total reconnecting time. : 23h55m56.249s

The `reconnectBackOffBaseSeconds` is increased by a bit over 10% (from
3.0 to 3.4 seconds) so this would not affect reconnection retries too
much.

#### PR checklist

- [ ] ~~Tests written/updated~~
- [x] Changelog entry added in `.changelog` (we use
[unclog](https://github.com/informalsystems/unclog) to manage our
changelog)
- [x] Updated relevant documentation (`docs/` or `spec/`) and code
comments
<hr>This is an automatic backport of pull request #4377 done by
[Mergify](https://mergify.com).

---------

Co-authored-by: Andy Nogueira <me@andynogueira.dev>
mergify bot added a commit that referenced this issue Nov 4, 2024
…to 24 hours (backport #4377) (#4425)

close: #3519

Adjust `reconnectBackOffBaseSeconds` to increase reconnect retries to up
1 day (~24 hours).

The new value can be validated here: https://go.dev/play/p/k8F5rS-i24p,
which will show that the total time is increased to almost 24 hours.

Initial reconnecting time: 2m8.493s
Total reconnecting time. : 23h55m56.249s

The `reconnectBackOffBaseSeconds` is increased by a bit over 10% (from
3.0 to 3.4 seconds) so this would not affect reconnection retries too
much.

#### PR checklist

- [ ] ~~Tests written/updated~~
- [x] Changelog entry added in `.changelog` (we use
[unclog](https://github.com/informalsystems/unclog) to manage our
changelog)
- [x] Updated relevant documentation (`docs/` or `spec/`) and code
comments
<hr>This is an automatic backport of pull request #4377 done by
[Mergify](https://mergify.com).

---------

Co-authored-by: Andy Nogueira <me@andynogueira.dev>
(cherry picked from commit deef97f)
mergify bot added a commit that referenced this issue Nov 4, 2024
…to 24 hours (backport #4377) (#4426)

close: #3519 

Adjust `reconnectBackOffBaseSeconds` to increase reconnect retries to up
1 day (~24 hours).

The new value can be validated here: https://go.dev/play/p/k8F5rS-i24p,
which will show that the total time is increased to almost 24 hours.

Initial reconnecting time: 2m8.493s
Total reconnecting time. : 23h55m56.249s

The `reconnectBackOffBaseSeconds` is increased by a bit over 10% (from
3.0 to 3.4 seconds) so this would not affect reconnection retries too
much.

#### PR checklist

- [ ] ~~Tests written/updated~~
- [x] Changelog entry added in `.changelog` (we use
[unclog](https://github.com/informalsystems/unclog) to manage our
changelog)
- [x] Updated relevant documentation (`docs/` or `spec/`) and code
comments
<hr>This is an automatic backport of pull request #4377 done by
[Mergify](https://mergify.com).

---------

Co-authored-by: Andy Nogueira <me@andynogueira.dev>
andynog pushed a commit that referenced this issue Nov 4, 2024
…to 24 hours (backport #4377) (backport #4425) (#4428)

close: #3519 

fix exponential backoff logic to increase reconnect retries close to 24 hours

Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
yihuang added a commit to crypto-org-chain/cometbft that referenced this issue Nov 6, 2024
* build(deps): Bump google.golang.org/protobuf from 1.34.2 to 1.35.1 (cometbft#4380)

Bumps google.golang.org/protobuf from 1.34.2 to 1.35.1.


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=google.golang.org/protobuf&package-manager=go_modules&previous-version=1.34.2&new-version=1.35.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

* build(deps): Bump github.com/decred/dcrd/dcrec/secp256k1/v4 from 4.0.1 to 4.3.0 (cometbft#4381)

Bumps
[github.com/decred/dcrd/dcrec/secp256k1/v4](https://github.com/decred/dcrd)
from 4.0.1 to 4.3.0.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/decred/dcrd/commit/08d8572807872f2b9737f8a118b16c320a04b077"><code>08d8572</code></a>
secp256k1: Prepare v4.3.0.</li>
<li><a
href="https://github.com/decred/dcrd/commit/fe9a28cd1e4f341105001496b135a58d09717647"><code>fe9a28c</code></a>
secp256k1: No allocs in slow scalar base mult path.</li>
<li><a
href="https://github.com/decred/dcrd/commit/2104419fc012bb162222a5e0a2c06e4d806cbfae"><code>2104419</code></a>
wire: Fix typo in comment.</li>
<li><a
href="https://github.com/decred/dcrd/commit/b9d8d49c901bb7cbb19ed36d636c3e3d86a1fe43"><code>b9d8d49</code></a>
wire: add p2p mixing messages</li>
<li><a
href="https://github.com/decred/dcrd/commit/25adf60a9f4e12aec13565f6345f769965b0135a"><code>25adf60</code></a>
secp256k1: Add scalar base mult variant benchmarks.</li>
<li><a
href="https://github.com/decred/dcrd/commit/2ee2ebeb678398d3f9333a2cfa937378efe27cfb"><code>2ee2ebe</code></a>
secp256k1: Add TinyGo support.</li>
<li><a
href="https://github.com/decred/dcrd/commit/c6322d513aee03139d91a4e45490dc02d070f278"><code>c6322d5</code></a>
docker: Update image to golang:1.22.1-alpine3.19.</li>
<li><a
href="https://github.com/decred/dcrd/commit/20dedca001392442f83a7d5b218fe54a92c1c565"><code>20dedca</code></a>
server: Update required minimum protocol version.</li>
<li><a
href="https://github.com/decred/dcrd/commit/eb3de8e7299ba919d4ccd67cb1b56a17030f85b7"><code>eb3de8e</code></a>
docs: Update README.md to required Go 1.21/1.22.</li>
<li><a
href="https://github.com/decred/dcrd/commit/fedbaf982b460c7b639d1c577efe51e3f255f8dc"><code>fedbaf9</code></a>
build: Test against Go 1.22.</li>
<li>Additional commits viewable in <a
href="https://github.com/decred/dcrd/compare/dcrjson/v4.0.1...dcrec/secp256k1/v4.3.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=github.com/decred/dcrd/dcrec/secp256k1/v4&package-manager=go_modules&previous-version=4.0.1&new-version=4.3.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

* build(deps): Bump github.com/prometheus/common from 0.59.1 to 0.60.1 (cometbft#4382)

Bumps
[github.com/prometheus/common](https://github.com/prometheus/common)
from 0.59.1 to 0.60.1.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/prometheus/common/releases">github.com/prometheus/common's
releases</a>.</em></p>
<blockquote>
<h2>v0.60.1</h2>
<h2>What's Changed</h2>
<ul>
<li>promslog: Only log basename, not full path by <a
href="https://github.com/roidelapluie"><code>@​roidelapluie</code></a>
in <a
href="https://redirect.github.com/prometheus/common/pull/705">prometheus/common#705</a></li>
<li>Reload certificates even when no CA is used by <a
href="https://github.com/roidelapluie"><code>@​roidelapluie</code></a>
in <a
href="https://redirect.github.com/prometheus/common/pull/707">prometheus/common#707</a></li>
<li>Synchronize common files from prometheus/prometheus by <a
href="https://github.com/prombot"><code>@​prombot</code></a> in <a
href="https://redirect.github.com/prometheus/common/pull/701">prometheus/common#701</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/prometheus/common/compare/v0.60.0...v0.60.1">https://github.com/prometheus/common/compare/v0.60.0...v0.60.1</a></p>
<h2>v0.60.0</h2>
<h2>What's Changed</h2>
<ul>
<li>Synchronize common files from prometheus/prometheus by <a
href="https://github.com/prombot"><code>@​prombot</code></a> in <a
href="https://redirect.github.com/prometheus/common/pull/692">prometheus/common#692</a></li>
<li>slog: expose io.Writer by <a
href="https://github.com/jkroepke"><code>@​jkroepke</code></a> in <a
href="https://redirect.github.com/prometheus/common/pull/694">prometheus/common#694</a></li>
<li>Synchronize common files from prometheus/prometheus by <a
href="https://github.com/prombot"><code>@​prombot</code></a> in <a
href="https://redirect.github.com/prometheus/common/pull/695">prometheus/common#695</a></li>
<li>promslog: use UTC timestamps for go-kit log style by <a
href="https://github.com/dswarbrick"><code>@​dswarbrick</code></a> in <a
href="https://redirect.github.com/prometheus/common/pull/696">prometheus/common#696</a></li>
<li>feat: add <code>promslog.NewNopLogger()</code> convenience func by
<a href="https://github.com/tjhop"><code>@​tjhop</code></a> in <a
href="https://redirect.github.com/prometheus/common/pull/697">prometheus/common#697</a></li>
<li>Bump golang.org/x/net from 0.28.0 to 0.29.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/prometheus/common/pull/699">prometheus/common#699</a></li>
<li>Bump golang.org/x/oauth2 from 0.22.0 to 0.23.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/prometheus/common/pull/698">prometheus/common#698</a></li>
<li>Update supported Go versions by <a
href="https://github.com/SuperQ"><code>@​SuperQ</code></a> in <a
href="https://redirect.github.com/prometheus/common/pull/700">prometheus/common#700</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/prometheus/common/compare/v0.59.1...v0.60.0">https://github.com/prometheus/common/compare/v0.59.1...v0.60.0</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/prometheus/common/commit/653e0fa37b474f7af331bbfb409c0f654fb04a94"><code>653e0fa</code></a>
Update common Prometheus files (<a
href="https://redirect.github.com/prometheus/common/issues/701">#701</a>)</li>
<li><a
href="https://github.com/prometheus/common/commit/0d2e2e509b05032929d08ab69362a58ce540fcb1"><code>0d2e2e5</code></a>
Reload certificates even when no CA is used (<a
href="https://redirect.github.com/prometheus/common/issues/707">#707</a>)</li>
<li><a
href="https://github.com/prometheus/common/commit/a9d2e3ff1686621e6f772f7b503b12d242701c48"><code>a9d2e3f</code></a>
Merge pull request <a
href="https://redirect.github.com/prometheus/common/issues/705">#705</a>
from roidelapluie/sourcefile</li>
<li><a
href="https://github.com/prometheus/common/commit/fdc50c720a071b6796bcb5e08c3a1a03cc6ef121"><code>fdc50c7</code></a>
promslog: Only log basename, not full path</li>
<li><a
href="https://github.com/prometheus/common/commit/dae848db5327d2a4e2e06cbe883093a71b4226d7"><code>dae848d</code></a>
Update supported Go versions (<a
href="https://redirect.github.com/prometheus/common/issues/700">#700</a>)</li>
<li><a
href="https://github.com/prometheus/common/commit/63ff77eeea3cfd552d81d455b44546db75a3b4ac"><code>63ff77e</code></a>
Bump golang.org/x/oauth2 from 0.22.0 to 0.23.0 (<a
href="https://redirect.github.com/prometheus/common/issues/698">#698</a>)</li>
<li><a
href="https://github.com/prometheus/common/commit/b7aa68c1be77461e7ed0987ee66a288bbaa324ae"><code>b7aa68c</code></a>
Bump golang.org/x/net from 0.28.0 to 0.29.0 (<a
href="https://redirect.github.com/prometheus/common/issues/699">#699</a>)</li>
<li><a
href="https://github.com/prometheus/common/commit/4e3a6fd348a3c764fff5193cd0ee34eea4402318"><code>4e3a6fd</code></a>
feat: add <code>promslog.NewNopLogger()</code> convenience func (<a
href="https://redirect.github.com/prometheus/common/issues/697">#697</a>)</li>
<li><a
href="https://github.com/prometheus/common/commit/d66e745b02ad50e6763ec5a0765aae5014a6c188"><code>d66e745</code></a>
promslog: use UTC timestamps for go-kit log style (<a
href="https://redirect.github.com/prometheus/common/issues/696">#696</a>)</li>
<li><a
href="https://github.com/prometheus/common/commit/14bac55a992f7b83ab9d147a041e274606bdb607"><code>14bac55</code></a>
Merge pull request <a
href="https://redirect.github.com/prometheus/common/issues/695">#695</a>
from prometheus/repo_sync</li>
<li>Additional commits viewable in <a
href="https://github.com/prometheus/common/compare/v0.59.1...v0.60.1">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=github.com/prometheus/common&package-manager=go_modules&previous-version=0.59.1&new-version=0.60.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

* build(deps): Bump golang.org/x/net from 0.29.0 to 0.30.0 (cometbft#4384)

Bumps [golang.org/x/net](https://github.com/golang/net) from 0.29.0 to
0.30.0.
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/golang/net/commit/6cc5ac4e9a03d73b331eb1d6db98a02e558243b7"><code>6cc5ac4</code></a>
go.mod: update golang.org/x dependencies</li>
<li><a
href="https://github.com/golang/net/commit/f88258d67e0f0f144c79964ca05bb81d51ee8411"><code>f88258d</code></a>
websocket: update nhooyr.io/websocket to github.com/coder/websocket</li>
<li><a
href="https://github.com/golang/net/commit/7191757bc637cf79a7ece0546e33f903bf5e9709"><code>7191757</code></a>
http2: add support for net/http HTTP2 config field</li>
<li><a
href="https://github.com/golang/net/commit/4790dc7047441aed4889873cdd30e1e6adf49735"><code>4790dc7</code></a>
http2: add support for server-originated pings</li>
<li><a
href="https://github.com/golang/net/commit/541dbe58b6bc869fc1c7de361846682a34365325"><code>541dbe5</code></a>
http2: add Server.WriteByteTimeout</li>
<li><a
href="https://github.com/golang/net/commit/3c333c0c5288a7cf127e427ddda5b1b54020a2b4"><code>3c333c0</code></a>
route: fix address parsing of messages on Darwin</li>
<li>See full diff in <a
href="https://github.com/golang/net/compare/v0.29.0...v0.30.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=golang.org/x/net&package-manager=go_modules&previous-version=0.29.0&new-version=0.30.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): Bump bufbuild/buf-setup-action from 1.45.0 to 1.46.0 (cometbft#4414)

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore: use the latest cometbft-db in v0.38.x (cometbft#4297)

Co-authored-by: Anton Kaliaev <anton.kalyaev@gmail.com>

* fix(p2p): adjust backoff seconds to increase reconnect retries close to 24 hours (backport cometbft#4377) (cometbft#4425)

close: cometbft#3519 

Adjust `reconnectBackOffBaseSeconds` to increase reconnect retries to up
1 day (~24 hours).

The new value can be validated here: https://go.dev/play/p/k8F5rS-i24p,
which will show that the total time is increased to almost 24 hours.

Initial reconnecting time: 2m8.493s
Total reconnecting time. : 23h55m56.249s

The `reconnectBackOffBaseSeconds` is increased by a bit over 10% (from
3.0 to 3.4 seconds) so this would not affect reconnection retries too
much.

#### PR checklist

- [ ] ~~Tests written/updated~~
- [x] Changelog entry added in `.changelog` (we use
[unclog](https://github.com/informalsystems/unclog) to manage our
changelog)
- [x] Updated relevant documentation (`docs/` or `spec/`) and code
comments
<hr>This is an automatic backport of pull request cometbft#4377 done by
[Mergify](https://mergify.com).

---------

Co-authored-by: Andy Nogueira <me@andynogueira.dev>

* Merge commit from fork

* remove toolchain

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Co-authored-by: Jacob Gadikian <jacobgadikian@gmail.com>
Co-authored-by: Anton Kaliaev <anton.kalyaev@gmail.com>
Co-authored-by: Andy Nogueira <me@andynogueira.dev>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
Status: Done
Development

Successfully merging a pull request may close this issue.

2 participants