From 3a9d1539bb32ce7405508ffad77013df6f391111 Mon Sep 17 00:00:00 2001 From: Anshal Shukla Date: Mon, 29 Jan 2024 19:55:25 +0530 Subject: [PATCH 1/7] fix: bootnode --- cmd/bootnode/main.go | 12 +++++++++++- internal/cli/bootnode.go | 33 +++++++++++++-------------------- 2 files changed, 24 insertions(+), 21 deletions(-) diff --git a/cmd/bootnode/main.go b/cmd/bootnode/main.go index 491a35fb6d..c90e23d0d9 100644 --- a/cmd/bootnode/main.go +++ b/cmd/bootnode/main.go @@ -15,7 +15,8 @@ // along with go-ethereum. If not, see . // bootnode runs a bootstrap node for the Ethereum Discovery Protocol. -package main +// Keep package as bootnode during upstram merge. +package bootnode import ( "crypto/ecdsa" @@ -213,3 +214,12 @@ func doPortMapping(natm nat.Interface, ln *enode.LocalNode, addr *net.UDPAddr) * return extaddr } + +// Implemented separate function so that there are minimal conflicts during upstream merge +func PrintNotice(nodeKey *ecdsa.PublicKey, addr net.UDPAddr) { + printNotice(nodeKey, addr) +} + +func DoPortMapping(natm nat.Interface, ln *enode.LocalNode, addr *net.UDPAddr) *net.UDPAddr { + return doPortMapping(natm, ln, addr) +} diff --git a/internal/cli/bootnode.go b/internal/cli/bootnode.go index 756956daa9..979d69ec23 100644 --- a/internal/cli/bootnode.go +++ b/internal/cli/bootnode.go @@ -13,6 +13,7 @@ import ( "syscall" "time" + "github.com/ethereum/go-ethereum/cmd/bootnode" "github.com/ethereum/go-ethereum/cmd/utils" "github.com/ethereum/go-ethereum/crypto" "github.com/ethereum/go-ethereum/internal/cli/flagset" @@ -213,33 +214,25 @@ func (b *BootnodeCommand) Run(args []string) int { } conn, err := net.ListenUDP("udp", addr) - if err != nil { b.UI.Error(fmt.Sprintf("failed to listen udp addr '%s': %v", b.listenAddr, err)) return 1 } - - realaddr := conn.LocalAddr().(*net.UDPAddr) - if natm != nil { - if !realaddr.IP.IsLoopback() { - go nat.Map(natm, nil, "udp", realaddr.Port, realaddr.Port, "ethereum discovery") - } - - if ext, err := natm.ExternalIP(); err == nil { - // nolint: govet - realaddr = &net.UDPAddr{IP: ext, Port: realaddr.Port} - } - } - - n := enode.NewV4(&nodeKey.PublicKey, addr.IP, addr.Port, addr.Port) - b.UI.Info(n.String()) - - if b.dryRun { - return 0 - } + defer conn.Close() db, _ := enode.OpenDB("") ln := enode.NewLocalNode(db, nodeKey) + + listenerAddr := conn.LocalAddr().(*net.UDPAddr) + if natm != nil { + natAddr := bootnode.DoPortMapping(natm, ln, listenerAddr) + if natAddr != nil { + listenerAddr = natAddr + } + } + + bootnode.PrintNotice(&nodeKey.PublicKey, *listenerAddr) + cfg := discover.Config{ PrivateKey: nodeKey, Log: log.Root(), From 0a3d419570ab8b1ff89a7f22a24117ca763f6e28 Mon Sep 17 00:00:00 2001 From: Anshal Shukla Date: Mon, 29 Jan 2024 21:23:56 +0530 Subject: [PATCH 2/7] fix: lint --- cmd/bootnode/main.go | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/cmd/bootnode/main.go b/cmd/bootnode/main.go index c90e23d0d9..4f744e102b 100644 --- a/cmd/bootnode/main.go +++ b/cmd/bootnode/main.go @@ -35,6 +35,7 @@ import ( "github.com/ethereum/go-ethereum/p2p/netutil" ) +// nolint func main() { var ( listenAddr = flag.String("addr", ":30301", "listen address") @@ -215,7 +216,7 @@ func doPortMapping(natm nat.Interface, ln *enode.LocalNode, addr *net.UDPAddr) * return extaddr } -// Implemented separate function so that there are minimal conflicts during upstream merge +// Implemented separate functions so that there are minimal conflicts during upstream merge func PrintNotice(nodeKey *ecdsa.PublicKey, addr net.UDPAddr) { printNotice(nodeKey, addr) } From 5c8625c999eea10643fc0218262217aa919ec177 Mon Sep 17 00:00:00 2001 From: Vaibhav Jindal Date: Thu, 18 Jan 2024 04:00:32 +0530 Subject: [PATCH 3/7] Chg: Changed the maximum automatic rewind length from 256 to 126 --- eth/bor_checkpoint_verifier.go | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/eth/bor_checkpoint_verifier.go b/eth/bor_checkpoint_verifier.go index f8ac341e74..a0bdfeac8e 100644 --- a/eth/bor_checkpoint_verifier.go +++ b/eth/bor_checkpoint_verifier.go @@ -37,6 +37,8 @@ var ( rewindLengthMeter = metrics.NewRegisteredMeter("chain/autorewind/length", nil) ) +const maxRewindLen uint64 = 126 + type borVerifier struct { verify func(ctx context.Context, eth *Ethereum, handler *ethHandler, start uint64, end uint64, hash string, isCheckpoint bool) (string, error) } @@ -117,8 +119,8 @@ func borVerify(ctx context.Context, eth *Ethereum, handler *ethHandler, start ui } } - if head-rewindTo > 255 { - rewindTo = head - 255 + if head-rewindTo > maxRewindLen { + rewindTo = head - maxRewindLen } if isCheckpoint { From 2f02c00e1fe390684fff84c3e9148cd1c7978641 Mon Sep 17 00:00:00 2001 From: Arpit Temani Date: Tue, 30 Jan 2024 13:16:36 +0530 Subject: [PATCH 4/7] update version --- packaging/templates/package_scripts/control | 2 +- packaging/templates/package_scripts/control.arm64 | 2 +- packaging/templates/package_scripts/control.profile.amd64 | 2 +- packaging/templates/package_scripts/control.profile.arm64 | 2 +- packaging/templates/package_scripts/control.validator | 2 +- .../templates/package_scripts/control.validator.arm64 | 2 +- params/version.go | 8 ++++---- 7 files changed, 10 insertions(+), 10 deletions(-) diff --git a/packaging/templates/package_scripts/control b/packaging/templates/package_scripts/control index 94eeea3661..053cc684d9 100644 --- a/packaging/templates/package_scripts/control +++ b/packaging/templates/package_scripts/control @@ -1,5 +1,5 @@ Source: bor -Version: 1.2.3 +Version: 1.2.4-beta Section: develop Priority: standard Maintainer: Polygon diff --git a/packaging/templates/package_scripts/control.arm64 b/packaging/templates/package_scripts/control.arm64 index 809d705aa6..25d6451a7f 100644 --- a/packaging/templates/package_scripts/control.arm64 +++ b/packaging/templates/package_scripts/control.arm64 @@ -1,5 +1,5 @@ Source: bor -Version: 1.2.3 +Version: 1.2.4-beta Section: develop Priority: standard Maintainer: Polygon diff --git a/packaging/templates/package_scripts/control.profile.amd64 b/packaging/templates/package_scripts/control.profile.amd64 index 22470ccd49..40877bbd48 100644 --- a/packaging/templates/package_scripts/control.profile.amd64 +++ b/packaging/templates/package_scripts/control.profile.amd64 @@ -1,5 +1,5 @@ Source: bor-profile -Version: 1.2.3 +Version: 1.2.4-beta Section: develop Priority: standard Maintainer: Polygon diff --git a/packaging/templates/package_scripts/control.profile.arm64 b/packaging/templates/package_scripts/control.profile.arm64 index 4a52b2e063..e7bee6ac52 100644 --- a/packaging/templates/package_scripts/control.profile.arm64 +++ b/packaging/templates/package_scripts/control.profile.arm64 @@ -1,5 +1,5 @@ Source: bor-profile -Version: 1.2.3 +Version: 1.2.4-beta Section: develop Priority: standard Maintainer: Polygon diff --git a/packaging/templates/package_scripts/control.validator b/packaging/templates/package_scripts/control.validator index 00b517c3b0..66adba3502 100644 --- a/packaging/templates/package_scripts/control.validator +++ b/packaging/templates/package_scripts/control.validator @@ -1,5 +1,5 @@ Source: bor-profile -Version: 1.2.3 +Version: 1.2.4-beta Section: develop Priority: standard Maintainer: Polygon diff --git a/packaging/templates/package_scripts/control.validator.arm64 b/packaging/templates/package_scripts/control.validator.arm64 index 725a4ec394..596910a8a9 100644 --- a/packaging/templates/package_scripts/control.validator.arm64 +++ b/packaging/templates/package_scripts/control.validator.arm64 @@ -1,5 +1,5 @@ Source: bor-profile -Version: 1.2.3 +Version: 1.2.4-beta Section: develop Priority: standard Maintainer: Polygon diff --git a/params/version.go b/params/version.go index b44ab8079c..c2e3e99b38 100644 --- a/params/version.go +++ b/params/version.go @@ -21,10 +21,10 @@ import ( ) const ( - VersionMajor = 1 // Major version component of the current release - VersionMinor = 2 // Minor version component of the current release - VersionPatch = 3 // Patch version component of the current release - VersionMeta = "" // Version metadata to append to the version string + VersionMajor = 1 // Major version component of the current release + VersionMinor = 2 // Minor version component of the current release + VersionPatch = 4 // Patch version component of the current release + VersionMeta = "beta" // Version metadata to append to the version string ) var GitCommit string From 5d34ab40d893299a9bb16a42c902006e503b7188 Mon Sep 17 00:00:00 2001 From: Arpit Temani Date: Tue, 30 Jan 2024 13:31:36 +0530 Subject: [PATCH 5/7] add cancun Block for mumbai --- builder/files/genesis-testnet-v4.json | 1 + internal/cli/server/chains/mumbai.go | 1 + internal/cli/server/chains/test_files/chain_legacy_test.json | 1 + internal/cli/server/chains/test_files/chain_test.json | 1 + params/config.go | 1 + 5 files changed, 5 insertions(+) diff --git a/builder/files/genesis-testnet-v4.json b/builder/files/genesis-testnet-v4.json index afad138492..f3881b0166 100644 --- a/builder/files/genesis-testnet-v4.json +++ b/builder/files/genesis-testnet-v4.json @@ -14,6 +14,7 @@ "berlinBlock": 13996000, "londonBlock": 22640000, "shanghaiBlock": 41874000, + "cancunBlock": 45648608, "bor": { "jaipurBlock": 22770000, "delhiBlock": 29638656, diff --git a/internal/cli/server/chains/mumbai.go b/internal/cli/server/chains/mumbai.go index 7fe25554c5..56fe8a1d47 100644 --- a/internal/cli/server/chains/mumbai.go +++ b/internal/cli/server/chains/mumbai.go @@ -28,6 +28,7 @@ var mumbaiTestnet = &Chain{ BerlinBlock: big.NewInt(13996000), LondonBlock: big.NewInt(22640000), ShanghaiBlock: big.NewInt(41874000), + CancunBlock: big.NewInt(45648608), Bor: ¶ms.BorConfig{ JaipurBlock: big.NewInt(22770000), DelhiBlock: big.NewInt(29638656), diff --git a/internal/cli/server/chains/test_files/chain_legacy_test.json b/internal/cli/server/chains/test_files/chain_legacy_test.json index c3e9b3c7bf..cc81db1608 100644 --- a/internal/cli/server/chains/test_files/chain_legacy_test.json +++ b/internal/cli/server/chains/test_files/chain_legacy_test.json @@ -15,6 +15,7 @@ "berlinBlock": 13996000, "londonBlock": 13996000, "shanghaiBlock": 41874000, + "cancunBlock": 45648608, "bor": { "period": { "0": 2, diff --git a/internal/cli/server/chains/test_files/chain_test.json b/internal/cli/server/chains/test_files/chain_test.json index 8555833321..3f826d285f 100644 --- a/internal/cli/server/chains/test_files/chain_test.json +++ b/internal/cli/server/chains/test_files/chain_test.json @@ -17,6 +17,7 @@ "berlinBlock":13996000, "londonBlock":13996000, "shanghaiBlock": 41874000, + "cancunBlock": 45648608, "bor":{ "period":{ "0":2, diff --git a/params/config.go b/params/config.go index e724a02747..a82800206b 100644 --- a/params/config.go +++ b/params/config.go @@ -196,6 +196,7 @@ var ( BerlinBlock: big.NewInt(13996000), LondonBlock: big.NewInt(22640000), ShanghaiBlock: big.NewInt(41874000), + CancunBlock: big.NewInt(45648608), Bor: &BorConfig{ JaipurBlock: big.NewInt(22770000), DelhiBlock: big.NewInt(29638656), From f5a51afa04c4aacc7a4e4594eb9a1d1de9884866 Mon Sep 17 00:00:00 2001 From: Pratik Patil Date: Fri, 9 Feb 2024 22:29:06 +0530 Subject: [PATCH 6/7] updated version to 1.2.5-beta --- packaging/templates/package_scripts/control | 2 +- packaging/templates/package_scripts/control.arm64 | 2 +- packaging/templates/package_scripts/control.profile.amd64 | 2 +- packaging/templates/package_scripts/control.profile.arm64 | 2 +- packaging/templates/package_scripts/control.validator | 2 +- packaging/templates/package_scripts/control.validator.arm64 | 2 +- params/version.go | 2 +- 7 files changed, 7 insertions(+), 7 deletions(-) diff --git a/packaging/templates/package_scripts/control b/packaging/templates/package_scripts/control index 053cc684d9..0dfbbab07f 100644 --- a/packaging/templates/package_scripts/control +++ b/packaging/templates/package_scripts/control @@ -1,5 +1,5 @@ Source: bor -Version: 1.2.4-beta +Version: 1.2.5-beta Section: develop Priority: standard Maintainer: Polygon diff --git a/packaging/templates/package_scripts/control.arm64 b/packaging/templates/package_scripts/control.arm64 index 25d6451a7f..e7114840d5 100644 --- a/packaging/templates/package_scripts/control.arm64 +++ b/packaging/templates/package_scripts/control.arm64 @@ -1,5 +1,5 @@ Source: bor -Version: 1.2.4-beta +Version: 1.2.5-beta Section: develop Priority: standard Maintainer: Polygon diff --git a/packaging/templates/package_scripts/control.profile.amd64 b/packaging/templates/package_scripts/control.profile.amd64 index 40877bbd48..5264be314c 100644 --- a/packaging/templates/package_scripts/control.profile.amd64 +++ b/packaging/templates/package_scripts/control.profile.amd64 @@ -1,5 +1,5 @@ Source: bor-profile -Version: 1.2.4-beta +Version: 1.2.5-beta Section: develop Priority: standard Maintainer: Polygon diff --git a/packaging/templates/package_scripts/control.profile.arm64 b/packaging/templates/package_scripts/control.profile.arm64 index e7bee6ac52..76f68f8708 100644 --- a/packaging/templates/package_scripts/control.profile.arm64 +++ b/packaging/templates/package_scripts/control.profile.arm64 @@ -1,5 +1,5 @@ Source: bor-profile -Version: 1.2.4-beta +Version: 1.2.5-beta Section: develop Priority: standard Maintainer: Polygon diff --git a/packaging/templates/package_scripts/control.validator b/packaging/templates/package_scripts/control.validator index 66adba3502..b1816d185f 100644 --- a/packaging/templates/package_scripts/control.validator +++ b/packaging/templates/package_scripts/control.validator @@ -1,5 +1,5 @@ Source: bor-profile -Version: 1.2.4-beta +Version: 1.2.5-beta Section: develop Priority: standard Maintainer: Polygon diff --git a/packaging/templates/package_scripts/control.validator.arm64 b/packaging/templates/package_scripts/control.validator.arm64 index 596910a8a9..b8e1430029 100644 --- a/packaging/templates/package_scripts/control.validator.arm64 +++ b/packaging/templates/package_scripts/control.validator.arm64 @@ -1,5 +1,5 @@ Source: bor-profile -Version: 1.2.4-beta +Version: 1.2.5-beta Section: develop Priority: standard Maintainer: Polygon diff --git a/params/version.go b/params/version.go index c2e3e99b38..c08eb9c4b6 100644 --- a/params/version.go +++ b/params/version.go @@ -23,7 +23,7 @@ import ( const ( VersionMajor = 1 // Major version component of the current release VersionMinor = 2 // Minor version component of the current release - VersionPatch = 4 // Patch version component of the current release + VersionPatch = 5 // Patch version component of the current release VersionMeta = "beta" // Version metadata to append to the version string ) From d193b95e14e3bfc03645b8eedc96f26cf8ee3af6 Mon Sep 17 00:00:00 2001 From: Pratik Patil Date: Sat, 10 Feb 2024 00:12:21 +0530 Subject: [PATCH 7/7] hot fix in miner related to metadata calculation (#1159) --- miner/worker.go | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/miner/worker.go b/miner/worker.go index 3573eccfee..0e1dd83691 100644 --- a/miner/worker.go +++ b/miner/worker.go @@ -920,7 +920,7 @@ func (w *worker) commitTransactions(env *environment, txs *transactionsByPriceAn EnableMVHashMap := w.chainConfig.IsCancun(env.header.Number) // create and add empty mvHashMap in statedb - if EnableMVHashMap { + if EnableMVHashMap && w.IsRunning() { deps = map[int]map[int]bool{} chDeps = make(chan blockstm.TxDep) @@ -956,7 +956,7 @@ func (w *worker) commitTransactions(env *environment, txs *transactionsByPriceAn mainloop: for { if interruptCtx != nil { - if EnableMVHashMap { + if EnableMVHashMap && w.IsRunning() { env.state.AddEmptyMVHashMap() } @@ -1055,7 +1055,7 @@ mainloop: coalescedLogs = append(coalescedLogs, logs...) env.tcount++ - if EnableMVHashMap { + if EnableMVHashMap && w.IsRunning() { env.depsMVFullWriteList = append(env.depsMVFullWriteList, env.state.MVFullWriteList()) env.mvReadMapList = append(env.mvReadMapList, env.state.MVReadMap()) @@ -1085,7 +1085,7 @@ mainloop: txs.Pop() } - if EnableMVHashMap { + if EnableMVHashMap && w.IsRunning() { env.state.ClearReadMap() env.state.ClearWriteMap() }