mirror of
https://github.com/luxfi/node.git
synced 2026-07-27 03:39:39 +00:00
v1.34.29: consensus v1.35.37 -> v1.35.38 (behind-node self-heal via cert-triggered ancestor catch-up)
Fixes the 'restart-recovery exhausted' mainnet killer: a slipped validator logged 'cert REFUSED (behind; fetch and retry)' but NEVER fetched, because HandleIncomingCert only triggered a catchup when the cert's OWN block was untracked — never for a missing INTERMEDIATE ancestor. v1.35.38 (3c09ecb94) surfaces the specific missing ancestor as a typed error and the cert handler fires exactly one requestCatchup for it. The node-layer fetch machinery (networkCatchup.RequestAncestors -> requestContext -> GetAncestors -> AcceptCatchupBlock) was already fully wired — it was just never called on this path. With --skip-bootstrap=true (which disables the beacon-quorum frontier backstop) this cert-trigger was the ONLY self-heal path, so its absence was fatal: a behind node couldn't rejoin -> effective 4/5 -> any flap -> stall. Consensus-side only, no node code change. -race: launch-gate invariant PASS (rejoin 2.75s, no fork); self-heal + typed-error tests PASS, no data races. Co-authored-by: Hanzo Dev <dev@hanzo.ai>
This commit is contained in:
@@ -26,7 +26,7 @@ require (
|
||||
github.com/huin/goupnp v1.3.0
|
||||
github.com/jackpal/gateway v1.1.1
|
||||
github.com/jackpal/go-nat-pmp v1.0.2
|
||||
github.com/luxfi/consensus v1.35.37
|
||||
github.com/luxfi/consensus v1.35.38
|
||||
github.com/luxfi/crypto v1.19.26
|
||||
github.com/luxfi/database v1.20.4
|
||||
github.com/luxfi/ids v1.3.1
|
||||
|
||||
@@ -315,8 +315,8 @@ github.com/luxfi/compress v0.0.5 h1:4tEUHw5MK1bu5UOjfYCt4OKMiH7yykIgmGPRA/BfJTM=
|
||||
github.com/luxfi/compress v0.0.5/go.mod h1:Cc1yxD2pfzrvpO32W2GDwLKff+CylHEvzZh2Ko8RSIU=
|
||||
github.com/luxfi/concurrent v0.0.3 h1:eJyv1fhaC0jMLMw6+QS774cUmp7GK+ouMgvLCqnC7cc=
|
||||
github.com/luxfi/concurrent v0.0.3/go.mod h1:Aj/FR5NpM0cB2P4Nt3+tz9+dV6V+LUW4HuMgSjwq5hw=
|
||||
github.com/luxfi/consensus v1.35.37 h1:y76OfTaNH13S7X5d4kDvnxdLM16wtSekDlBhKlPStL8=
|
||||
github.com/luxfi/consensus v1.35.37/go.mod h1:hmsGz3CcTrKxvw7/YSmfu8qAtzgyL5zQ3ajpUNcub/4=
|
||||
github.com/luxfi/consensus v1.35.38 h1:EVQ5fpBFpPub2syIG/lrGB3NDKcw5cV//gRPd2Za45I=
|
||||
github.com/luxfi/consensus v1.35.38/go.mod h1:hmsGz3CcTrKxvw7/YSmfu8qAtzgyL5zQ3ajpUNcub/4=
|
||||
github.com/luxfi/constants v1.6.1 h1:4AfBh1YxDgnQjWPLqLpjiBaLAjPBw5naTTzRWWM19ms=
|
||||
github.com/luxfi/constants v1.6.1/go.mod h1:Pu5jWHdnUtQRbWC43yTUjU/pbIIKMDOd2a2yroSfo48=
|
||||
github.com/luxfi/container v0.0.4 h1:BXhF82WyfqVP5mjlNcr7tP0Fcnvl0Ap1rkiu+rq5XuM=
|
||||
|
||||
Reference in New Issue
Block a user