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

Crash when using --rpccorsdomain #663

Closed
kobigurk opened this issue Apr 8, 2015 · 15 comments
Closed

Crash when using --rpccorsdomain #663

kobigurk opened this issue Apr 8, 2015 · 15 comments

Comments

@kobigurk
Copy link
Contributor

kobigurk commented Apr 8, 2015

geth --rpc --rpcport 8222 --rpccorsdomain "*"
geth --rpc --rpcport 8222 --rpccorsdomain "http://foo.com"

both cause a crash. without --rpccorsdomain it works.

unexpected fault address 0x0
fatal error: fault
[signal 0xb code=0x80 addr=0x0 pc=0x74811f]

goroutine 1323 [running]:
runtime.gothrow(0xbc27d0, 0x5)
/home/kobigurk/go/git/go/src/runtime/panic.go:503 +0x8e fp=0xc20bc21ba0 sp=0xc20bc21b88
runtime.sigpanic()
/home/kobigurk/go/git/go/src/runtime/sigpanic_unix.go:29 +0x265 fp=0xc20bc21bf0 sp=0xc20bc21ba0
github.com/rs/cors.(_Cors).logf(0x2007f00843d0958, 0xc16cb0, 0x17, 0x0, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/Godeps/_workspace/src/github.com/rs/cors/cors.go:247 +0x1f fp=0xc20bc21c28 sp=0xc20bc21bf0
github.com/rs/cors.func·001(0x7f0084350450, 0xc20d8c15e0, 0xc20dc9b450)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/Godeps/_workspace/src/github.com/rs/cors/cors.go:120 +0x133 fp=0xc20bc21c90 sp=0xc20bc21c28
net/http.HandlerFunc.ServeHTTP(0xc20a4f85a0, 0x7f0084350450, 0xc20d8c15e0, 0xc20dc9b450)
/home/kobigurk/go/git/go/src/net/http/server.go:1265 +0x41 fp=0xc20bc21cb0 sp=0xc20bc21c90
net/http.serverHandler.ServeHTTP(0xc209ccfe60, 0x7f0084350450, 0xc20d8c15e0, 0xc20dc9b450)
/home/kobigurk/go/git/go/src/net/http/server.go:1703 +0x19a fp=0xc20bc21d08 sp=0xc20bc21cb0
net/http.(_conn).serve(0xc20df625a0)
/home/kobigurk/go/git/go/src/net/http/server.go:1204 +0xb57 fp=0xc20bc21fd8 sp=0xc20bc21d08
runtime.goexit()
/home/kobigurk/go/git/go/src/runtime/asm_amd64.s:2232 +0x1 fp=0xc20bc21fe0 sp=0xc20bc21fd8
created by net/http.(*Server).Serve
/home/kobigurk/go/git/go/src/net/http/server.go:1751 +0x35e

goroutine 1 [chan receive]:
main.run(0xc2080c2700)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/cmd/geth/main.go:270 +0x188
github.com/codegangsta/cli.(*App).Run(0xc2080d8000, 0xc20800a000, 0x8, 0x8, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/Godeps/_workspace/src/github.com/codegangsta/cli/app.go:182 +0xe5c
main.main()
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/cmd/geth/main.go:254 +0xb6

goroutine 5 [select]:
github.com/ethereum/go-ethereum/logger.dispatchLoop()
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/logger/sys.go:65 +0x6d1
created by github.com/ethereum/go-ethereum/logger.init·1
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/logger/sys.go:44 +0x25

goroutine 17 [syscall, locked to thread]:
runtime.goexit()
/home/kobigurk/go/git/go/src/runtime/asm_amd64.s:2232 +0x1

goroutine 6 [chan receive]:
github.com/ethereum/go-ethereum/logger/glog.(*loggingT).flushDaemon(0x1254040)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/logger/glog/glog.go:897 +0x78
created by github.com/ethereum/go-ethereum/logger/glog.init·1
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/logger/glog/glog.go:428 +0x77

goroutine 8 [syscall]:
os/signal.loop()
/home/kobigurk/go/git/go/src/os/signal/signal_unix.go:21 +0x1f
created by os/signal.init·1
/home/kobigurk/go/git/go/src/os/signal/signal_unix.go:27 +0x35

goroutine 9 [chan receive]:
github.com/ethereum/go-ethereum/cmd/utils.func·001()
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/cmd/utils/cmd.go:52 +0x116
created by github.com/ethereum/go-ethereum/cmd/utils.HandleInterrupt
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/cmd/utils/cmd.go:56 +0xb5

goroutine 56 [select]:
github.com/ethereum/go-ethereum/p2p/discover.(*udp).loop(0xc20a500d70)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/discover/udp.go:278 +0xb53
created by github.com/ethereum/go-ethereum/p2p/discover.newUDP
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/discover/udp.go:180 +0x4a8

goroutine 18 [chan receive]:
github.com/ethereum/go-ethereum/logger.sysLoop(0x7f008d539c90, 0xc2080cf210, 0xc208116000, 0xc20801ef60)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/logger/sys.go:101 +0x5a
created by github.com/ethereum/go-ethereum/logger.func·001
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/logger/sys.go:61 +0x176

goroutine 57 [IO wait]:
net.(_pollDesc).Wait(0xc20a559d40, 0x72, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:84 +0x47
net.(_pollDesc).WaitRead(0xc20a559d40, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:89 +0x43
net.(_netFD).readFrom(0xc20a559ce0, 0xc2080b5000, 0x1000, 0x1000, 0x0, 0x0, 0x0, 0x7f008d5391c8, 0xc20d62aa18)
/home/kobigurk/go/git/go/src/net/fd_unix.go:269 +0x4a1
net.(_UDPConn).ReadFromUDP(0xc20811c138, 0xc2080b5000, 0x1000, 0x1000, 0x3, 0x0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/udpsock_posix.go:67 +0x124
github.com/ethereum/go-ethereum/p2p/discover.(*udp).readLoop(0xc20a500d70)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/discover/udp.go:372 +0x16d
created by github.com/ethereum/go-ethereum/p2p/discover.newUDP
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/discover/udp.go:181 +0x4c5

goroutine 58 [IO wait]:
net.(_pollDesc).Wait(0xc20a559e90, 0x72, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:84 +0x47
net.(_pollDesc).WaitRead(0xc20a559e90, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:89 +0x43
net.(_netFD).accept(0xc20a559e30, 0x0, 0x7f008d5391c8, 0xc2096c9cf0)
/home/kobigurk/go/git/go/src/net/fd_unix.go:419 +0x40b
net.(_TCPListener).AcceptTCP(0xc20811c148, 0xc2081276c8, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/tcpsock_posix.go:234 +0x4e
net.(_TCPListener).Accept(0xc20811c148, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/tcpsock_posix.go:244 +0x4c
github.com/ethereum/go-ethereum/p2p.(_Server).listenLoop(0xc208122fc0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:268 +0x228
created by github.com/ethereum/go-ethereum/p2p.(*Server).startListening
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:223 +0x226

goroutine 1194 [select]:
github.com/ethereum/go-ethereum/blockpool.(_section).run(0xc20ad546e0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:213 +0x2198
created by github.com/ethereum/go-ethereum/blockpool.(_BlockPool).newSection
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:93 +0x4e1

goroutine 13 [IO wait]:
net.(_pollDesc).Wait(0xc2080ae060, 0x72, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:84 +0x47
net.(_pollDesc).WaitRead(0xc2080ae060, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:89 +0x43
net.(_netFD).readFrom(0xc2080ae000, 0xc2081120b0, 0xc, 0xc, 0x0, 0x0, 0x0, 0x7f008d5391c8, 0xc20d4f0508)
/home/kobigurk/go/git/go/src/net/fd_unix.go:269 +0x4a1
net.(_UDPConn).ReadFromUDP(0xc208118018, 0xc2081120b0, 0xc, 0xc, 0x2, 0x0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/udpsock_posix.go:67 +0x124
github.com/jackpal/go-nat-pmp.(_Client).rpc(0xc208096a60, 0xc20805dede, 0x2, 0x2, 0xc, 0xc2081120b0, 0xc, 0xc, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/Godeps/_workspace/src/github.com/jackpal/go-nat-pmp/natpmp.go:126 +0x37a
github.com/jackpal/go-nat-pmp.(_Client).GetExternalAddress(0xc208096a60, 0x0, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/Godeps/_workspace/src/github.com/jackpal/go-nat-pmp/natpmp.go:50 +0xc8
github.com/ethereum/go-ethereum/p2p/nat.func·006()
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/nat/natpmp.go:57 +0xa5
created by github.com/ethereum/go-ethereum/p2p/nat.discoverPMP
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/nat/natpmp.go:62 +0x1a1

goroutine 66 [select]:
github.com/syndtr/goleveldb/leveldb.(*DB).compactionError(0xc208033680)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/Godeps/_workspace/src/github.com/syndtr/goleveldb/leveldb/db_compaction.go:111 +0x284
created by github.com/syndtr/goleveldb/leveldb.openDB
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/Godeps/_workspace/src/github.com/syndtr/goleveldb/leveldb/db.go:116 +0x7dd

goroutine 67 [select]:
github.com/syndtr/goleveldb/leveldb.(*DB).tCompaction(0xc208033680)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/Godeps/_workspace/src/github.com/syndtr/goleveldb/leveldb/db_compaction.go:666 +0x877
created by github.com/syndtr/goleveldb/leveldb.openDB
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/Godeps/_workspace/src/github.com/syndtr/goleveldb/leveldb/db.go:119 +0x821

goroutine 68 [select]:
github.com/syndtr/goleveldb/leveldb.(*DB).mCompaction(0xc208033680)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/Godeps/_workspace/src/github.com/syndtr/goleveldb/leveldb/db_compaction.go:615 +0x21a
created by github.com/syndtr/goleveldb/leveldb.openDB
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/Godeps/_workspace/src/github.com/syndtr/goleveldb/leveldb/db.go:120 +0x83b

goroutine 69 [select]:
github.com/syndtr/goleveldb/leveldb.(*DB).jWriter(0xc208033680)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/Godeps/_workspace/src/github.com/syndtr/goleveldb/leveldb/db_write.go:37 +0x197
created by github.com/syndtr/goleveldb/leveldb.openDB
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/Godeps/_workspace/src/github.com/syndtr/goleveldb/leveldb/db.go:121 +0x855

goroutine 70 [select]:
github.com/ethereum/go-ethereum/ethdb.(*LDBDatabase).update(0xc2080e8000)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/ethdb/database.go:127 +0x46e
created by github.com/ethereum/go-ethereum/ethdb.NewLDBDatabase
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/ethdb/database.go:38 +0x1c5

goroutine 14 [select]:
github.com/syndtr/goleveldb/leveldb.(*DB).compactionError(0xc2080338c0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/Godeps/_workspace/src/github.com/syndtr/goleveldb/leveldb/db_compaction.go:111 +0x284
created by github.com/syndtr/goleveldb/leveldb.openDB
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/Godeps/_workspace/src/github.com/syndtr/goleveldb/leveldb/db.go:116 +0x7dd

goroutine 15 [select]:
github.com/syndtr/goleveldb/leveldb.(*DB).tCompaction(0xc2080338c0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/Godeps/_workspace/src/github.com/syndtr/goleveldb/leveldb/db_compaction.go:666 +0x877
created by github.com/syndtr/goleveldb/leveldb.openDB
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/Godeps/_workspace/src/github.com/syndtr/goleveldb/leveldb/db.go:119 +0x821

goroutine 16 [select]:
github.com/syndtr/goleveldb/leveldb.(*DB).mCompaction(0xc2080338c0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/Godeps/_workspace/src/github.com/syndtr/goleveldb/leveldb/db_compaction.go:615 +0x21a
created by github.com/syndtr/goleveldb/leveldb.openDB
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/Godeps/_workspace/src/github.com/syndtr/goleveldb/leveldb/db.go:120 +0x83b

goroutine 82 [select]:
github.com/syndtr/goleveldb/leveldb.(*DB).jWriter(0xc2080338c0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/Godeps/_workspace/src/github.com/syndtr/goleveldb/leveldb/db_write.go:37 +0x197
created by github.com/syndtr/goleveldb/leveldb.openDB
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/Godeps/_workspace/src/github.com/syndtr/goleveldb/leveldb/db.go:121 +0x855

goroutine 83 [select]:
github.com/ethereum/go-ethereum/ethdb.(*LDBDatabase).update(0xc2080ad8c0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/ethdb/database.go:127 +0x46e
created by github.com/ethereum/go-ethereum/ethdb.NewLDBDatabase
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/ethdb/database.go:38 +0x1c5

goroutine 84 [select]:
github.com/syndtr/goleveldb/leveldb.(*DB).compactionError(0xc208033b00)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/Godeps/_workspace/src/github.com/syndtr/goleveldb/leveldb/db_compaction.go:111 +0x284
created by github.com/syndtr/goleveldb/leveldb.openDB
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/Godeps/_workspace/src/github.com/syndtr/goleveldb/leveldb/db.go:116 +0x7dd

goroutine 85 [select]:
github.com/syndtr/goleveldb/leveldb.(*DB).tCompaction(0xc208033b00)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/Godeps/_workspace/src/github.com/syndtr/goleveldb/leveldb/db_compaction.go:666 +0x877
created by github.com/syndtr/goleveldb/leveldb.openDB
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/Godeps/_workspace/src/github.com/syndtr/goleveldb/leveldb/db.go:119 +0x821

goroutine 86 [select]:
github.com/syndtr/goleveldb/leveldb.(*DB).mCompaction(0xc208033b00)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/Godeps/_workspace/src/github.com/syndtr/goleveldb/leveldb/db_compaction.go:615 +0x21a
created by github.com/syndtr/goleveldb/leveldb.openDB
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/Godeps/_workspace/src/github.com/syndtr/goleveldb/leveldb/db.go:120 +0x83b

goroutine 87 [select]:
github.com/syndtr/goleveldb/leveldb.(*DB).jWriter(0xc208033b00)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/Godeps/_workspace/src/github.com/syndtr/goleveldb/leveldb/db_write.go:37 +0x197
created by github.com/syndtr/goleveldb/leveldb.openDB
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/Godeps/_workspace/src/github.com/syndtr/goleveldb/leveldb/db.go:121 +0x855

goroutine 88 [select]:
github.com/ethereum/go-ethereum/ethdb.(*LDBDatabase).update(0xc2080e9830)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/ethdb/database.go:127 +0x46e
created by github.com/ethereum/go-ethereum/ethdb.NewLDBDatabase
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/ethdb/database.go:38 +0x1c5

goroutine 89 [select]:
github.com/ethereum/go-ethereum/core.(*ChainManager).update(0xc208195450)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/core/chain_manager.go:564 +0x60d
created by github.com/ethereum/go-ethereum/core.NewChainManager
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/core/chain_manager.go:115 +0x343

goroutine 52 [select]:
github.com/ethereum/go-ethereum/event/filter.(_Filters).loop(0xc208c8e0e0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/event/filter/filter.go:57 +0x2f1
created by github.com/ethereum/go-ethereum/event/filter.(_Filters).Start
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/event/filter/filter.go:32 +0x32

goroutine 53 [select]:
github.com/ethereum/go-ethereum/miner.(*worker).update(0xc2080c2460)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/miner/worker.go:158 +0x855
created by github.com/ethereum/go-ethereum/miner.newWorker
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/miner/worker.go:103 +0x2cb

goroutine 54 [chan receive]:
github.com/ethereum/go-ethereum/miner.(*worker).wait(0xc2080c2460)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/miner/worker.go:191 +0x6f
created by github.com/ethereum/go-ethereum/miner.newWorker
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/miner/worker.go:104 +0x2e5

goroutine 55 [select]:
github.com/ethereum/go-ethereum/p2p/nat.Map(0x7f008d539c50, 0xc2080adce0, 0xc20a514d80, 0xbd2110, 0x3, 0x7660, 0x7660, 0xc267f0, 0x12)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/nat/nat.go:97 +0xa3f
created by github.com/ethereum/go-ethereum/p2p/discover.newUDP
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/discover/udp.go:172 +0x2ce

goroutine 59 [select]:
github.com/ethereum/go-ethereum/p2p/nat.Map(0x7f008d539c50, 0xc2080adce0, 0xc20a514cc0, 0xbd0cb0, 0x3, 0x7660, 0x7660, 0xbf2f30, 0xc)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/nat/nat.go:97 +0xa3f
github.com/ethereum/go-ethereum/p2p.func·005()
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:227 +0x8f
created by github.com/ethereum/go-ethereum/p2p.(*Server).startListening
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:229 +0x309

goroutine 60 [select]:
github.com/ethereum/go-ethereum/p2p.(_Server).dialLoop(0xc208122fc0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:294 +0x646
created by github.com/ethereum/go-ethereum/p2p.(_Server).Start
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:204 +0xa3e

goroutine 61 [select]:
github.com/ethereum/go-ethereum/blockpool.func·001()
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/blockpool.go:236 +0x632
created by github.com/ethereum/go-ethereum/blockpool.(*BlockPool).Start
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/blockpool.go:263 +0x7b3

goroutine 62 [select]:
github.com/ethereum/go-ethereum/whisper.(_Whisper).update(0xc2096820e0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/whisper/whisper.go:206 +0x104
created by github.com/ethereum/go-ethereum/whisper.(_Whisper).Start
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/whisper/whisper.go:73 +0x110

goroutine 63 [chan receive]:
github.com/ethereum/go-ethereum/eth.(_Ethereum).txBroadcastLoop(0xc208170000)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/eth/backend.go:436 +0x96
created by github.com/ethereum/go-ethereum/eth.(_Ethereum).Start
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/eth/backend.go:377 +0x2bd

goroutine 64 [chan receive]:
github.com/ethereum/go-ethereum/eth.(_Ethereum).blockBroadcastLoop(0xc208170000)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/eth/backend.go:444 +0x9f
created by github.com/ethereum/go-ethereum/eth.(_Ethereum).Start
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/eth/backend.go:381 +0x3ff

goroutine 65 [select]:
github.com/ethereum/go-ethereum/xeth.(*XEth).start(0xc20a56db00)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/xeth/xeth.go:88 +0x3dd
created by github.com/ethereum/go-ethereum/xeth.New
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/xeth/xeth.go:78 +0x511

goroutine 415 [IO wait]:
net.(_pollDesc).Wait(0xc208bd7b10, 0x72, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:84 +0x47
net.(_pollDesc).WaitRead(0xc208bd7b10, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:89 +0x43
net.(_netFD).Read(0xc208bd7ab0, 0xc20dbbe9a0, 0x8130, 0x8130, 0x0, 0x7f008d5391c8, 0xc20dbe7550)
/home/kobigurk/go/git/go/src/net/fd_unix.go:242 +0x40f
net.(_conn).Read(0xc20817a9e8, 0xc20dbbe9a0, 0x8130, 0x8130, 0x0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/net.go:121 +0xdc
io.ReadAtLeast(0x7f00843d0b08, 0xc20817a9e8, 0xc20dbbe000, 0x8ad0, 0x8ad0, 0x8ad0, 0x9a0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/io/io.go:298 +0xf1
io.ReadFull(0x7f00843d0b08, 0xc20817a9e8, 0xc20dbbe000, 0x8ad0, 0x8ad0, 0x8ad0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/io/io.go:316 +0x6d
github.com/ethereum/go-ethereum/p2p.(_rlpxFrameRW).ReadMsg(0xc20b2ef320, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/rlpx.go:126 +0x580
github.com/ethereum/go-ethereum/p2p.(_netWrapper).ReadMsg(0xc20b7343c0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/message.go:109 +0x16b
github.com/ethereum/go-ethereum/p2p.(_Peer).readLoop(0xc208d784e0, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:180 +0x10e
github.com/ethereum/go-ethereum/p2p.func·001()
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:123 +0x33
created by github.com/ethereum/go-ethereum/p2p.(_Peer).run
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:123 +0x17a

goroutine 91 [select]:
github.com/ethereum/go-ethereum/whisper.(_peer).update(0xc20a563cb0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/whisper/peer.go:54 +0x2aa
created by github.com/ethereum/go-ethereum/whisper.(_peer).start
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/whisper/peer.go:40 +0x32

goroutine 114 [select]:
github.com/ethereum/go-ethereum/event/filter.(_FilterManager).filterLoop(0xc20a1d2280)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/event/filter/eth_filter.go:74 +0x7e1
created by github.com/ethereum/go-ethereum/event/filter.(_FilterManager).Start
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/event/filter/eth_filter.go:31 +0x32

goroutine 99 [IO wait]:
net.(_pollDesc).Wait(0xc20a559f00, 0x72, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:84 +0x47
net.(_pollDesc).WaitRead(0xc20a559f00, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:89 +0x43
net.(_netFD).accept(0xc20a559ea0, 0x0, 0x7f008d5391c8, 0xc20df52ff8)
/home/kobigurk/go/git/go/src/net/fd_unix.go:419 +0x40b
net.(_TCPListener).AcceptTCP(0xc20811c178, 0xc20b6fce78, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/tcpsock_posix.go:234 +0x4e
net.(_TCPListener).Accept(0xc20811c178, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/tcpsock_posix.go:244 +0x4c
net/http.(_Server).Serve(0xc209ccfe60, 0x7f00843d0810, 0xc20811c178, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/http/server.go:1728 +0x92
net/http.Serve(0x7f00843d0810, 0xc20811c178, 0x7f00843d0988, 0xc20a4f85a0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/http/server.go:1606 +0xa1
created by github.com/ethereum/go-ethereum/rpc.Start
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/rpc/http.go:42 +0x5ac

goroutine 24 [semacquire]:
sync.(_WaitGroup).Wait(0xc2096665d0)
/home/kobigurk/go/git/go/src/sync/waitgroup.go:132 +0x169
github.com/ethereum/go-ethereum/blockpool.func·012()
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/status.go:105 +0x3e
created by github.com/ethereum/go-ethereum/blockpool.(_BlockPool).syncing
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/status.go:109 +0x103

goroutine 276 [chan receive]:
github.com/ethereum/go-ethereum/p2p.(_protoRW).ReadMsg(0xc20a8ab540, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:307 +0x72
github.com/ethereum/go-ethereum/whisper.(_Whisper).msgHandler(0xc2096820e0, 0xc20adf8240, 0x7f00843d23f0, 0xc20a8ab540, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/whisper/whisper.go:156 +0x11d
github.com/ethereum/go-ethereum/whisper._Whisper.(github.com/ethereum/go-ethereum/whisper.msgHandler)·fm(0xc20adf8240, 0x7f00843d23f0, 0xc20a8ab540, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/whisper/whisper.go:61 +0x57
github.com/ethereum/go-ethereum/p2p.func·004()
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:242 +0x88
created by github.com/ethereum/go-ethereum/p2p.(_Peer).startProtocols
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:254 +0x2ad

goroutine 23 [IO wait]:
net.(_pollDesc).Wait(0xc20a49afb0, 0x72, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:84 +0x47
net.(_pollDesc).WaitRead(0xc20a49afb0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:89 +0x43
net.(_netFD).Read(0xc20a49af50, 0xc20dbed260, 0x20, 0x20, 0x0, 0x7f008d5391c8, 0xc20dd2c198)
/home/kobigurk/go/git/go/src/net/fd_unix.go:242 +0x40f
net.(_conn).Read(0xc2081180f0, 0xc20dbed260, 0x20, 0x20, 0x0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/net.go:121 +0xdc
io.ReadAtLeast(0x7f00843d0b08, 0xc2081180f0, 0xc20dbed260, 0x20, 0x20, 0x20, 0x0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/io/io.go:298 +0xf1
io.ReadFull(0x7f00843d0b08, 0xc2081180f0, 0xc20dbed260, 0x20, 0x20, 0x20, 0x0, 0x0)
/home/kobigurk/go/git/go/src/io/io.go:316 +0x6d
github.com/ethereum/go-ethereum/p2p.(_rlpxFrameRW).ReadMsg(0xc20a9b4fc0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/rlpx.go:108 +0x11f
github.com/ethereum/go-ethereum/p2p.(_netWrapper).ReadMsg(0xc209184880, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/message.go:109 +0x16b
github.com/ethereum/go-ethereum/p2p.(_Peer).readLoop(0xc209c64c00, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:180 +0x10e
github.com/ethereum/go-ethereum/p2p.func·001()
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:123 +0x33
created by github.com/ethereum/go-ethereum/p2p.(_Peer).run
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:123 +0x17a

goroutine 1229 [IO wait]:
net.(_pollDesc).Wait(0xc20cb4e610, 0x77, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:84 +0x47
net.(_pollDesc).WaitWrite(0xc20cb4e610, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:93 +0x43
net.(_netFD).connect(0xc20cb4e5b0, 0x0, 0x0, 0x7f008d53f4a8, 0xc20dc08880, 0xeccb6f405, 0x36594288, 0x1253800, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_unix.go:114 +0x24b
net.(_netFD).dial(0xc20cb4e5b0, 0x7f00843d0848, 0x0, 0x7f00843d0848, 0xc20dadb230, 0xeccb6f405, 0x36594288, 0x1253800, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/sock_posix.go:139 +0x37a
net.socket(0xbd0cb0, 0x3, 0x2, 0x1, 0x0, 0xc20dadb200, 0x7f00843d0848, 0x0, 0x7f00843d0848, 0xc20dadb230, ...)
/home/kobigurk/go/git/go/src/net/sock_posix.go:91 +0x422
net.internetSocket(0xbd0cb0, 0x3, 0x7f00843d0848, 0x0, 0x7f00843d0848, 0xc20dadb230, 0xeccb6f405, 0x36594288, 0x1253800, 0x1, ...)
/home/kobigurk/go/git/go/src/net/ipsock_posix.go:137 +0x148
net.dialTCP(0xbd0cb0, 0x3, 0x0, 0xc20dadb230, 0xeccb6f405, 0x36594288, 0x1253800, 0xc20daf2620, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/tcpsock_posix.go:156 +0x125
net.dialSingle(0xbd0cb0, 0x3, 0xc20dc08860, 0x14, 0x0, 0x0, 0x7f00843d07e0, 0xc20dadb230, 0xeccb6f405, 0x36594288, ...)
/home/kobigurk/go/git/go/src/net/dial.go:235 +0x3f5
net.func·016(0xeccb6f405, 0xe36594288, 0x1253800, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/dial.go:163 +0x12c
net.dial(0xbd0cb0, 0x3, 0x7f00843d07e0, 0xc20dadb230, 0xc20bc1ce78, 0xeccb6f405, 0xe36594288, 0x1253800, 0x0, 0x0, ...)
/home/kobigurk/go/git/go/src/net/fd_unix.go:40 +0x6f
net.(_Dialer).Dial(0xc20a1d2200, 0xbd0cb0, 0x3, 0xc20dc08860, 0x14, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/dial.go:170 +0x4be
github.com/ethereum/go-ethereum/p2p.(_Server).dialNode(0xc208122fc0, 0xc208dfd730)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:332 +0x1e5
github.com/ethereum/go-ethereum/p2p.func·006()
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:313 +0x44
created by github.com/ethereum/go-ethereum/p2p.(*Server).dialLoop
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:317 +0x504

goroutine 21 [chan receive]:
github.com/ethereum/go-ethereum/p2p.(_protoRW).ReadMsg(0xc208a0e320, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:307 +0x72
github.com/ethereum/go-ethereum/eth.(_ethProtocol).handle(0xc20a8a2150, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/eth/protocol.go:167 +0xb9
github.com/ethereum/go-ethereum/eth.runEthProtocol(0x3c, 0x0, 0x7f00843d0538, 0xc209682000, 0x7f00843d0568, 0xc208195450, 0x7f00843d05a0, 0xc209666540, 0xc209c64c00, 0x7f00843d23f0, ...)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/eth/protocol.go:160 +0x5e2
github.com/ethereum/go-ethereum/eth.func·002(0xc209c64c00, 0x7f00843d23f0, 0xc208a0e320, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/eth/protocol.go:122 +0xa3
github.com/ethereum/go-ethereum/p2p.func·004()
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:242 +0x88
created by github.com/ethereum/go-ethereum/p2p.(*Peer).startProtocols
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:254 +0x2ad

goroutine 22 [chan receive]:
github.com/ethereum/go-ethereum/p2p.(_protoRW).ReadMsg(0xc208a0e370, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:307 +0x72
github.com/ethereum/go-ethereum/whisper.(_Whisper).msgHandler(0xc2096820e0, 0xc209c64c00, 0x7f00843d23f0, 0xc208a0e370, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/whisper/whisper.go:156 +0x11d
github.com/ethereum/go-ethereum/whisper._Whisper.(github.com/ethereum/go-ethereum/whisper.msgHandler)·fm(0xc209c64c00, 0x7f00843d23f0, 0xc208a0e370, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/whisper/whisper.go:61 +0x57
github.com/ethereum/go-ethereum/p2p.func·004()
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:242 +0x88
created by github.com/ethereum/go-ethereum/p2p.(_Peer).startProtocols
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:254 +0x2ad

goroutine 138 [select]:
github.com/ethereum/go-ethereum/p2p.(_Peer).run(0xc20adf8240, 0x7f00843d2300)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:132 +0x66c
github.com/ethereum/go-ethereum/p2p.(_Server).startPeer(0xc208122fc0, 0x7f00843d0a78, 0xc20a2d2018, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:394 +0x9f5
created by github.com/ethereum/go-ethereum/p2p.(*Server).listenLoop
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:274 +0x3d8

goroutine 135 [select]:
github.com/ethereum/go-ethereum/p2p.(_Peer).run(0xc209c64c00, 0x7f00843d2300)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:132 +0x66c
github.com/ethereum/go-ethereum/p2p.(_Server).startPeer(0xc208122fc0, 0x7f00843d0a78, 0xc2081180f0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:394 +0x9f5
created by github.com/ethereum/go-ethereum/p2p.(*Server).listenLoop
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:274 +0x3d8

goroutine 94 [select]:
github.com/ethereum/go-ethereum/p2p.(_Peer).run(0xc20adc4c00, 0x7f00843d2300)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:132 +0x66c
github.com/ethereum/go-ethereum/p2p.(_Server).startPeer(0xc208122fc0, 0x7f00843d0a78, 0xc20818af48, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:394 +0x9f5
created by github.com/ethereum/go-ethereum/p2p.(*Server).listenLoop
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:274 +0x3d8

goroutine 95 [chan receive]:
github.com/ethereum/go-ethereum/p2p.(_protoRW).ReadMsg(0xc208189b80, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:307 +0x72
github.com/ethereum/go-ethereum/eth.(_ethProtocol).handle(0xc20a49a0e0, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/eth/protocol.go:167 +0xb9
github.com/ethereum/go-ethereum/eth.runEthProtocol(0x3c, 0x0, 0x7f00843d0538, 0xc209682000, 0x7f00843d0568, 0xc208195450, 0x7f00843d05a0, 0xc209666540, 0xc209165c80, 0x7f00843d23f0, ...)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/eth/protocol.go:160 +0x5e2
github.com/ethereum/go-ethereum/eth.func·002(0xc209165c80, 0x7f00843d23f0, 0xc208189b80, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/eth/protocol.go:122 +0xa3
github.com/ethereum/go-ethereum/p2p.func·004()
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:242 +0x88
created by github.com/ethereum/go-ethereum/p2p.(*Peer).startProtocols
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:254 +0x2ad

goroutine 1177 [select]:
github.com/ethereum/go-ethereum/blockpool.(_section).run(0xc20c76a160)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:213 +0x2198
created by github.com/ethereum/go-ethereum/blockpool.(_BlockPool).newSection
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:93 +0x4e1

goroutine 215 [select]:
github.com/ethereum/go-ethereum/p2p.(_Peer).run(0xc20b9780c0, 0x7f00843d2300)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:132 +0x66c
github.com/ethereum/go-ethereum/p2p.(_Server).startPeer(0xc208122fc0, 0x7f00843d0a78, 0xc20a2d2100, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:394 +0x9f5
created by github.com/ethereum/go-ethereum/p2p.(*Server).listenLoop
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:274 +0x3d8

goroutine 1186 [select]:
github.com/ethereum/go-ethereum/blockpool.(_section).run(0xc20ad54160)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:213 +0x2198
created by github.com/ethereum/go-ethereum/blockpool.(_BlockPool).newSection
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:93 +0x4e1

goroutine 97 [IO wait]:
net.(_pollDesc).Wait(0xc20b878f40, 0x72, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:84 +0x47
net.(_pollDesc).WaitRead(0xc20b878f40, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:89 +0x43
net.(_netFD).Read(0xc20b878ee0, 0xc20de9a440, 0x20, 0x20, 0x0, 0x7f008d5391c8, 0xc20de8ea68)
/home/kobigurk/go/git/go/src/net/fd_unix.go:242 +0x40f
net.(_conn).Read(0xc20ad111a0, 0xc20de9a440, 0x20, 0x20, 0x0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/net.go:121 +0xdc
io.ReadAtLeast(0x7f00843d0b08, 0xc20ad111a0, 0xc20de9a440, 0x20, 0x20, 0x20, 0x0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/io/io.go:298 +0xf1
io.ReadFull(0x7f00843d0b08, 0xc20ad111a0, 0xc20de9a440, 0x20, 0x20, 0x20, 0x0, 0x0)
/home/kobigurk/go/git/go/src/io/io.go:316 +0x6d
github.com/ethereum/go-ethereum/p2p.(_rlpxFrameRW).ReadMsg(0xc20bb72d20, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/rlpx.go:108 +0x11f
github.com/ethereum/go-ethereum/p2p.(_netWrapper).ReadMsg(0xc208fe4f00, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/message.go:109 +0x16b
github.com/ethereum/go-ethereum/p2p.(_Peer).readLoop(0xc209165c80, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:180 +0x10e
github.com/ethereum/go-ethereum/p2p.func·001()
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:123 +0x33
created by github.com/ethereum/go-ethereum/p2p.(_Peer).run
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:123 +0x17a

goroutine 277 [chan receive]:
github.com/ethereum/go-ethereum/p2p.(_protoRW).ReadMsg(0xc20a8ab4f0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:307 +0x72
github.com/ethereum/go-ethereum/eth.(_ethProtocol).handle(0xc20a2339d0, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/eth/protocol.go:167 +0xb9
github.com/ethereum/go-ethereum/eth.runEthProtocol(0x3c, 0x0, 0x7f00843d0538, 0xc209682000, 0x7f00843d0568, 0xc208195450, 0x7f00843d05a0, 0xc209666540, 0xc20adf8240, 0x7f00843d23f0, ...)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/eth/protocol.go:160 +0x5e2
github.com/ethereum/go-ethereum/eth.func·002(0xc20adf8240, 0x7f00843d23f0, 0xc20a8ab4f0, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/eth/protocol.go:122 +0xa3
github.com/ethereum/go-ethereum/p2p.func·004()
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:242 +0x88
created by github.com/ethereum/go-ethereum/p2p.(*Peer).startProtocols
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:254 +0x2ad

goroutine 96 [chan receive]:
github.com/ethereum/go-ethereum/p2p.(_protoRW).ReadMsg(0xc208189bd0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:307 +0x72
github.com/ethereum/go-ethereum/whisper.(_Whisper).msgHandler(0xc2096820e0, 0xc209165c80, 0x7f00843d23f0, 0xc208189bd0, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/whisper/whisper.go:156 +0x11d
github.com/ethereum/go-ethereum/whisper._Whisper.(github.com/ethereum/go-ethereum/whisper.msgHandler)·fm(0xc209165c80, 0x7f00843d23f0, 0xc208189bd0, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/whisper/whisper.go:61 +0x57
github.com/ethereum/go-ethereum/p2p.func·004()
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:242 +0x88
created by github.com/ethereum/go-ethereum/p2p.(_Peer).startProtocols
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:254 +0x2ad

goroutine 936 [select]:
github.com/ethereum/go-ethereum/blockpool.(_section).run(0xc209fe94a0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:213 +0x2198
created by github.com/ethereum/go-ethereum/blockpool.(_BlockPool).newSection
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:93 +0x4e1

goroutine 1281 [select]:
github.com/ethereum/go-ethereum/blockpool.(_section).run(0xc20ad55760)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:213 +0x2198
created by github.com/ethereum/go-ethereum/blockpool.(_BlockPool).newSection
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:93 +0x4e1

goroutine 1210 [IO wait]:
net.(_pollDesc).Wait(0xc20dbce450, 0x77, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:84 +0x47
net.(_pollDesc).WaitWrite(0xc20dbce450, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:93 +0x43
net.(_netFD).connect(0xc20dbce3f0, 0x0, 0x0, 0x7f008d53f4a8, 0xc20dbe5dc0, 0xeccb6f405, 0x365b4532, 0x1253800, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_unix.go:114 +0x24b
net.(_netFD).dial(0xc20dbce3f0, 0x7f00843d0848, 0x0, 0x7f00843d0848, 0xc20d8b1560, 0xeccb6f405, 0x365b4532, 0x1253800, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/sock_posix.go:139 +0x37a
net.socket(0xbd0cb0, 0x3, 0x2, 0x1, 0x0, 0xc20d8b1500, 0x7f00843d0848, 0x0, 0x7f00843d0848, 0xc20d8b1560, ...)
/home/kobigurk/go/git/go/src/net/sock_posix.go:91 +0x422
net.internetSocket(0xbd0cb0, 0x3, 0x7f00843d0848, 0x0, 0x7f00843d0848, 0xc20d8b1560, 0xeccb6f405, 0xc2365b4532, 0x1253800, 0x1, ...)
/home/kobigurk/go/git/go/src/net/ipsock_posix.go:137 +0x148
net.dialTCP(0xbd0cb0, 0x3, 0x0, 0xc20d8b1560, 0xeccb6f405, 0x365b4532, 0x1253800, 0xc20d8c6e60, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/tcpsock_posix.go:156 +0x125
net.dialSingle(0xbd0cb0, 0x3, 0xc20dbe5da0, 0x11, 0x0, 0x0, 0x7f00843d07e0, 0xc20d8b1560, 0xeccb6f405, 0x365b4532, ...)
/home/kobigurk/go/git/go/src/net/dial.go:235 +0x3f5
net.func·016(0xeccb6f405, 0xe365b4532, 0x1253800, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/dial.go:163 +0x12c
net.dial(0xbd0cb0, 0x3, 0x7f00843d07e0, 0xc20d8b1560, 0xc20b454e78, 0xeccb6f405, 0xe365b4532, 0x1253800, 0x0, 0x0, ...)
/home/kobigurk/go/git/go/src/net/fd_unix.go:40 +0x6f
net.(_Dialer).Dial(0xc20a1d2200, 0xbd0cb0, 0x3, 0xc20dbe5da0, 0x11, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/dial.go:170 +0x4be
github.com/ethereum/go-ethereum/p2p.(_Server).dialNode(0xc208122fc0, 0xc20a9a9f10)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:332 +0x1e5
github.com/ethereum/go-ethereum/p2p.func·006()
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:313 +0x44
created by github.com/ethereum/go-ethereum/p2p.(*Server).dialLoop
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:317 +0x504

goroutine 828 [select]:
github.com/ethereum/go-ethereum/blockpool.(_section).run(0xc20b254580)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:213 +0x2198
created by github.com/ethereum/go-ethereum/blockpool.(_BlockPool).newSection
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:93 +0x4e1

goroutine 282 [IO wait]:
net.(_pollDesc).Wait(0xc209192a70, 0x72, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:84 +0x47
net.(_pollDesc).WaitRead(0xc209192a70, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:89 +0x43
net.(_netFD).Read(0xc209192a10, 0xc20dafb100, 0x19d0, 0x19d0, 0x0, 0x7f008d5391c8, 0xc20deb6c40)
/home/kobigurk/go/git/go/src/net/fd_unix.go:242 +0x40f
net.(_conn).Read(0xc20818af48, 0xc20dafb100, 0x19d0, 0x19d0, 0x0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/net.go:121 +0xdc
io.ReadAtLeast(0x7f00843d0b08, 0xc20818af48, 0xc20daf4000, 0x8ad0, 0x8ad0, 0x8ad0, 0x7100, 0x0, 0x0)
/home/kobigurk/go/git/go/src/io/io.go:298 +0xf1
io.ReadFull(0x7f00843d0b08, 0xc20818af48, 0xc20daf4000, 0x8ad0, 0x8ad0, 0x8ad0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/io/io.go:316 +0x6d
github.com/ethereum/go-ethereum/p2p.(_rlpxFrameRW).ReadMsg(0xc208d79560, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/rlpx.go:126 +0x580
github.com/ethereum/go-ethereum/p2p.(_netWrapper).ReadMsg(0xc20b0a83c0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/message.go:109 +0x16b
github.com/ethereum/go-ethereum/p2p.(_Peer).readLoop(0xc20adc4c00, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:180 +0x10e
github.com/ethereum/go-ethereum/p2p.func·001()
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:123 +0x33
created by github.com/ethereum/go-ethereum/p2p.(_Peer).run
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:123 +0x17a

goroutine 81 [select]:
github.com/ethereum/go-ethereum/p2p.(_Peer).run(0xc209165c80, 0x7f00843d2300)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:132 +0x66c
github.com/ethereum/go-ethereum/p2p.(_Server).startPeer(0xc208122fc0, 0x7f00843d0a78, 0xc20ad111a0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:394 +0x9f5
created by github.com/ethereum/go-ethereum/p2p.(*Server).listenLoop
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:274 +0x3d8

goroutine 234 [select]:
github.com/ethereum/go-ethereum/whisper.(_peer).update(0xc209cb6270)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/whisper/peer.go:54 +0x2aa
created by github.com/ethereum/go-ethereum/whisper.(_peer).start
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/whisper/peer.go:40 +0x32

goroutine 1101 [select]:
github.com/ethereum/go-ethereum/blockpool.(_section).run(0xc20b883600)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:213 +0x2198
created by github.com/ethereum/go-ethereum/blockpool.(_BlockPool).newSection
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:93 +0x4e1

goroutine 281 [chan receive]:
github.com/ethereum/go-ethereum/p2p.(_protoRW).ReadMsg(0xc20b2fa320, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:307 +0x72
github.com/ethereum/go-ethereum/whisper.(_Whisper).msgHandler(0xc2096820e0, 0xc20adc4c00, 0x7f00843d23f0, 0xc20b2fa320, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/whisper/whisper.go:156 +0x11d
github.com/ethereum/go-ethereum/whisper._Whisper.(github.com/ethereum/go-ethereum/whisper.msgHandler)·fm(0xc20adc4c00, 0x7f00843d23f0, 0xc20b2fa320, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/whisper/whisper.go:61 +0x57
github.com/ethereum/go-ethereum/p2p.func·004()
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:242 +0x88
created by github.com/ethereum/go-ethereum/p2p.(_Peer).startProtocols
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:254 +0x2ad

goroutine 1322 [IO wait]:
net.(_pollDesc).Wait(0xc20a7b4bc0, 0x77, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:84 +0x47
net.(_pollDesc).WaitWrite(0xc20a7b4bc0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:93 +0x43
net.(_netFD).connect(0xc20a7b4b60, 0x0, 0x0, 0x7f008d53f4a8, 0xc20dbe94a0, 0xeccb6f405, 0x365aefa4, 0x1253800, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_unix.go:114 +0x24b
net.(_netFD).dial(0xc20a7b4b60, 0x7f00843d0848, 0x0, 0x7f00843d0848, 0xc20d8e4de0, 0xeccb6f405, 0x365aefa4, 0x1253800, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/sock_posix.go:139 +0x37a
net.socket(0xbd0cb0, 0x3, 0x2, 0x1, 0x0, 0xc20d8e4d00, 0x7f00843d0848, 0x0, 0x7f00843d0848, 0xc20d8e4de0, ...)
/home/kobigurk/go/git/go/src/net/sock_posix.go:91 +0x422
net.internetSocket(0xbd0cb0, 0x3, 0x7f00843d0848, 0x0, 0x7f00843d0848, 0xc20d8e4de0, 0xeccb6f405, 0xc2365aefa4, 0x1253800, 0x1, ...)
/home/kobigurk/go/git/go/src/net/ipsock_posix.go:137 +0x148
net.dialTCP(0xbd0cb0, 0x3, 0x0, 0xc20d8e4de0, 0xeccb6f405, 0x365aefa4, 0x1253800, 0xc20dbe6430, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/tcpsock_posix.go:156 +0x125
net.dialSingle(0xbd0cb0, 0x3, 0xc20dbe9480, 0x12, 0x0, 0x0, 0x7f00843d07e0, 0xc20d8e4de0, 0xeccb6f405, 0x365aefa4, ...)
/home/kobigurk/go/git/go/src/net/dial.go:235 +0x3f5
net.func·016(0xeccb6f405, 0xe365aefa4, 0x1253800, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/dial.go:163 +0x12c
net.dial(0xbd0cb0, 0x3, 0x7f00843d07e0, 0xc20d8e4de0, 0xc20814ce78, 0xeccb6f405, 0xe365aefa4, 0x1253800, 0x0, 0x0, ...)
/home/kobigurk/go/git/go/src/net/fd_unix.go:40 +0x6f
net.(_Dialer).Dial(0xc20a1d2200, 0xbd0cb0, 0x3, 0xc20dbe9480, 0x12, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/dial.go:170 +0x4be
github.com/ethereum/go-ethereum/p2p.(_Server).dialNode(0xc208122fc0, 0xc20a466460)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:332 +0x1e5
github.com/ethereum/go-ethereum/p2p.func·006()
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:313 +0x44
created by github.com/ethereum/go-ethereum/p2p.(*Server).dialLoop
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:317 +0x504

goroutine 217 [select]:
github.com/ethereum/go-ethereum/whisper.(_peer).update(0xc20ace60f0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/whisper/peer.go:54 +0x2aa
created by github.com/ethereum/go-ethereum/whisper.(_peer).start
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/whisper/peer.go:40 +0x32

goroutine 1300 [select]:
github.com/ethereum/go-ethereum/blockpool.(_section).run(0xc20b9278c0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:213 +0x2198
created by github.com/ethereum/go-ethereum/blockpool.(_BlockPool).newSection
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:93 +0x4e1

goroutine 370 [select]:
github.com/ethereum/go-ethereum/p2p.(_Peer).run(0xc208d784e0, 0x7f00843d2300)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:132 +0x66c
github.com/ethereum/go-ethereum/p2p.(_Server).startPeer(0xc208122fc0, 0x7f00843d0a78, 0xc20817a9e8, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:394 +0x9f5
created by github.com/ethereum/go-ethereum/p2p.(*Server).listenLoop
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:274 +0x3d8

goroutine 278 [IO wait]:
net.(_pollDesc).Wait(0xc20a49a1b0, 0x72, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:84 +0x47
net.(_pollDesc).WaitRead(0xc20a49a1b0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:89 +0x43
net.(_netFD).Read(0xc20a49a150, 0xc20d95c128, 0x3e8, 0x3e8, 0x0, 0x7f008d5391c8, 0xc20dd2db48)
/home/kobigurk/go/git/go/src/net/fd_unix.go:242 +0x40f
net.(_conn).Read(0xc20a2d2018, 0xc20d95c128, 0x3e8, 0x3e8, 0x0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/net.go:121 +0xdc
io.ReadAtLeast(0x7f00843d0b08, 0xc20a2d2018, 0xc20d95a400, 0x2110, 0x2110, 0x2110, 0x1d28, 0x0, 0x0)
/home/kobigurk/go/git/go/src/io/io.go:298 +0xf1
io.ReadFull(0x7f00843d0b08, 0xc20a2d2018, 0xc20d95a400, 0x2110, 0x2110, 0x2110, 0x0, 0x0)
/home/kobigurk/go/git/go/src/io/io.go:316 +0x6d
github.com/ethereum/go-ethereum/p2p.(_rlpxFrameRW).ReadMsg(0xc208e0e1e0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/rlpx.go:126 +0x580
github.com/ethereum/go-ethereum/p2p.(_netWrapper).ReadMsg(0xc2098bec00, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/message.go:109 +0x16b
github.com/ethereum/go-ethereum/p2p.(_Peer).readLoop(0xc20adf8240, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:180 +0x10e
github.com/ethereum/go-ethereum/p2p.func·001()
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:123 +0x33
created by github.com/ethereum/go-ethereum/p2p.(_Peer).run
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:123 +0x17a

goroutine 434 [select]:
github.com/ethereum/go-ethereum/whisper.(_peer).update(0xc20ada8a80)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/whisper/peer.go:54 +0x2aa
created by github.com/ethereum/go-ethereum/whisper.(_peer).start
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/whisper/peer.go:40 +0x32

goroutine 1007 [select]:
github.com/ethereum/go-ethereum/blockpool.(_section).run(0xc20a8a8f20)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:213 +0x2198
created by github.com/ethereum/go-ethereum/blockpool.(_BlockPool).newSection
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:93 +0x4e1

goroutine 1320 [IO wait]:
net.(_pollDesc).Wait(0xc20cb4e6f0, 0x77, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:84 +0x47
net.(_pollDesc).WaitWrite(0xc20cb4e6f0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:93 +0x43
net.(_netFD).connect(0xc20cb4e690, 0x0, 0x0, 0x7f008d53f4a8, 0xc20dc08900, 0xeccb6f405, 0x365ab630, 0x1253800, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_unix.go:114 +0x24b
net.(_netFD).dial(0xc20cb4e690, 0x7f00843d0848, 0x0, 0x7f00843d0848, 0xc20dadb290, 0xeccb6f405, 0x365ab630, 0x1253800, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/sock_posix.go:139 +0x37a
net.socket(0xbd0cb0, 0x3, 0x2, 0x1, 0x0, 0xc20dadb200, 0x7f00843d0848, 0x0, 0x7f00843d0848, 0xc20dadb290, ...)
/home/kobigurk/go/git/go/src/net/sock_posix.go:91 +0x422
net.internetSocket(0xbd0cb0, 0x3, 0x7f00843d0848, 0x0, 0x7f00843d0848, 0xc20dadb290, 0xeccb6f405, 0xc2365ab630, 0x1253800, 0x1, ...)
/home/kobigurk/go/git/go/src/net/ipsock_posix.go:137 +0x148
net.dialTCP(0xbd0cb0, 0x3, 0x0, 0xc20dadb290, 0xeccb6f405, 0x365ab630, 0x1253800, 0xc20daf26a0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/tcpsock_posix.go:156 +0x125
net.dialSingle(0xbd0cb0, 0x3, 0xc20dc088e0, 0x13, 0x0, 0x0, 0x7f00843d07e0, 0xc20dadb290, 0xeccb6f405, 0x365ab630, ...)
/home/kobigurk/go/git/go/src/net/dial.go:235 +0x3f5
net.func·016(0xeccb6f405, 0xe365ab630, 0x1253800, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/dial.go:163 +0x12c
net.dial(0xbd0cb0, 0x3, 0x7f00843d07e0, 0xc20dadb290, 0xc20bba4e78, 0xeccb6f405, 0xe365ab630, 0x1253800, 0x0, 0x0, ...)
/home/kobigurk/go/git/go/src/net/fd_unix.go:40 +0x6f
net.(_Dialer).Dial(0xc20a1d2200, 0xbd0cb0, 0x3, 0xc20dc088e0, 0x13, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/dial.go:170 +0x4be
github.com/ethereum/go-ethereum/p2p.(_Server).dialNode(0xc208122fc0, 0xc20a304070)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:332 +0x1e5
github.com/ethereum/go-ethereum/p2p.func·006()
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:313 +0x44
created by github.com/ethereum/go-ethereum/p2p.(*Server).dialLoop
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:317 +0x504

goroutine 1060 [select]:
github.com/ethereum/go-ethereum/blockpool.(_section).run(0xc20ad54000)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:213 +0x2198
created by github.com/ethereum/go-ethereum/blockpool.(_BlockPool).newSection
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:93 +0x4e1

goroutine 273 [chan receive]:
github.com/ethereum/go-ethereum/p2p.(_protoRW).ReadMsg(0xc20a7bfe00, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:307 +0x72
github.com/ethereum/go-ethereum/whisper.(_Whisper).msgHandler(0xc2096820e0, 0xc20b9780c0, 0x7f00843d23f0, 0xc20a7bfe00, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/whisper/whisper.go:156 +0x11d
github.com/ethereum/go-ethereum/whisper._Whisper.(github.com/ethereum/go-ethereum/whisper.msgHandler)·fm(0xc20b9780c0, 0x7f00843d23f0, 0xc20a7bfe00, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/whisper/whisper.go:61 +0x57
github.com/ethereum/go-ethereum/p2p.func·004()
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:242 +0x88
created by github.com/ethereum/go-ethereum/p2p.(_Peer).startProtocols
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:254 +0x2ad

goroutine 272 [select]:
github.com/ethereum/go-ethereum/whisper.(_peer).update(0xc20adfa120)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/whisper/peer.go:54 +0x2aa
created by github.com/ethereum/go-ethereum/whisper.(_peer).start
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/whisper/peer.go:40 +0x32

goroutine 354 [chan receive]:
github.com/ethereum/go-ethereum/p2p.(_protoRW).ReadMsg(0xc20a7bfdb0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:307 +0x72
github.com/ethereum/go-ethereum/eth.(_ethProtocol).handle(0xc20aa4e000, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/eth/protocol.go:167 +0xb9
github.com/ethereum/go-ethereum/eth.runEthProtocol(0x3c, 0x0, 0x7f00843d0538, 0xc209682000, 0x7f00843d0568, 0xc208195450, 0x7f00843d05a0, 0xc209666540, 0xc20b9780c0, 0x7f00843d23f0, ...)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/eth/protocol.go:160 +0x5e2
github.com/ethereum/go-ethereum/eth.func·002(0xc20b9780c0, 0x7f00843d23f0, 0xc20a7bfdb0, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/eth/protocol.go:122 +0xa3
github.com/ethereum/go-ethereum/p2p.func·004()
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:242 +0x88
created by github.com/ethereum/go-ethereum/p2p.(*Peer).startProtocols
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:254 +0x2ad

goroutine 355 [IO wait]:
net.(_pollDesc).Wait(0xc20bb6fe90, 0x72, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:84 +0x47
net.(_pollDesc).WaitRead(0xc20bb6fe90, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:89 +0x43
net.(_netFD).Read(0xc20bb6fe30, 0xc20b7cbd80, 0x20, 0x20, 0x0, 0x7f008d5391c8, 0xc20802bc90)
/home/kobigurk/go/git/go/src/net/fd_unix.go:242 +0x40f
net.(_conn).Read(0xc20a2d2100, 0xc20b7cbd80, 0x20, 0x20, 0x0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/net.go:121 +0xdc
io.ReadAtLeast(0x7f00843d0b08, 0xc20a2d2100, 0xc20b7cbd80, 0x20, 0x20, 0x20, 0x0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/io/io.go:298 +0xf1
io.ReadFull(0x7f00843d0b08, 0xc20a2d2100, 0xc20b7cbd80, 0x20, 0x20, 0x20, 0x0, 0x0)
/home/kobigurk/go/git/go/src/io/io.go:316 +0x6d
github.com/ethereum/go-ethereum/p2p.(_rlpxFrameRW).ReadMsg(0xc20b9c7200, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/rlpx.go:108 +0x11f
github.com/ethereum/go-ethereum/p2p.(_netWrapper).ReadMsg(0xc209d71b00, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/message.go:109 +0x16b
github.com/ethereum/go-ethereum/p2p.(_Peer).readLoop(0xc20b9780c0, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:180 +0x10e
github.com/ethereum/go-ethereum/p2p.func·001()
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:123 +0x33
created by github.com/ethereum/go-ethereum/p2p.(_Peer).run
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:123 +0x17a

goroutine 935 [select]:
github.com/ethereum/go-ethereum/blockpool.(_section).run(0xc20a4dc6e0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:213 +0x2198
created by github.com/ethereum/go-ethereum/blockpool.(_BlockPool).newSection
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:93 +0x4e1

goroutine 280 [chan receive]:
github.com/ethereum/go-ethereum/p2p.(_protoRW).ReadMsg(0xc20b2fa2d0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:307 +0x72
github.com/ethereum/go-ethereum/eth.(_ethProtocol).handle(0xc20bc03c70, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/eth/protocol.go:167 +0xb9
github.com/ethereum/go-ethereum/eth.runEthProtocol(0x3c, 0x0, 0x7f00843d0538, 0xc209682000, 0x7f00843d0568, 0xc208195450, 0x7f00843d05a0, 0xc209666540, 0xc20adc4c00, 0x7f00843d23f0, ...)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/eth/protocol.go:160 +0x5e2
github.com/ethereum/go-ethereum/eth.func·002(0xc20adc4c00, 0x7f00843d23f0, 0xc20b2fa2d0, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/eth/protocol.go:122 +0xa3
github.com/ethereum/go-ethereum/p2p.func·004()
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:242 +0x88
created by github.com/ethereum/go-ethereum/p2p.(*Peer).startProtocols
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:254 +0x2ad

goroutine 1110 [IO wait]:
net.(_pollDesc).Wait(0xc20dc40060, 0x77, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:84 +0x47
net.(_pollDesc).WaitWrite(0xc20dc40060, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:93 +0x43
net.(_netFD).connect(0xc20dc40000, 0x0, 0x0, 0x7f008d53f4a8, 0xc20dc36020, 0xeccb6f405, 0x365a5fb8, 0x1253800, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_unix.go:114 +0x24b
net.(_netFD).dial(0xc20dc40000, 0x7f00843d0848, 0x0, 0x7f00843d0848, 0xc20dc3c000, 0xeccb6f405, 0x365a5fb8, 0x1253800, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/sock_posix.go:139 +0x37a
net.socket(0xbd0cb0, 0x3, 0x2, 0x1, 0x0, 0xc20dc3c000, 0x7f00843d0848, 0x0, 0x7f00843d0848, 0xc20dc3c000, ...)
/home/kobigurk/go/git/go/src/net/sock_posix.go:91 +0x422
net.internetSocket(0xbd0cb0, 0x3, 0x7f00843d0848, 0x0, 0x7f00843d0848, 0xc20dc3c000, 0xeccb6f405, 0xc2365a5fb8, 0x1253800, 0x1, ...)
/home/kobigurk/go/git/go/src/net/ipsock_posix.go:137 +0x148
net.dialTCP(0xbd0cb0, 0x3, 0x0, 0xc20dc3c000, 0xeccb6f405, 0x365a5fb8, 0x1253800, 0xc20dc38030, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/tcpsock_posix.go:156 +0x125
net.dialSingle(0xbd0cb0, 0x3, 0xc20dc38020, 0x10, 0x0, 0x0, 0x7f00843d07e0, 0xc20dc3c000, 0xeccb6f405, 0x365a5fb8, ...)
/home/kobigurk/go/git/go/src/net/dial.go:235 +0x3f5
net.func·016(0xeccb6f405, 0xe365a5fb8, 0x1253800, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/dial.go:163 +0x12c
net.dial(0xbd0cb0, 0x3, 0x7f00843d07e0, 0xc20dc3c000, 0xc20bba7e78, 0xeccb6f405, 0xe365a5fb8, 0x1253800, 0x0, 0x0, ...)
/home/kobigurk/go/git/go/src/net/fd_unix.go:40 +0x6f
net.(_Dialer).Dial(0xc20a1d2200, 0xbd0cb0, 0x3, 0xc20dc38020, 0x10, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/dial.go:170 +0x4be
github.com/ethereum/go-ethereum/p2p.(_Server).dialNode(0xc208122fc0, 0xc20bb6fc70)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:332 +0x1e5
github.com/ethereum/go-ethereum/p2p.func·006()
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:313 +0x44
created by github.com/ethereum/go-ethereum/p2p.(*Server).dialLoop
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:317 +0x504

goroutine 1145 [select]:
github.com/ethereum/go-ethereum/blockpool.(_section).run(0xc20a910160)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:213 +0x2198
created by github.com/ethereum/go-ethereum/blockpool.(_BlockPool).newSection
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:93 +0x4e1

goroutine 879 [select]:
github.com/ethereum/go-ethereum/blockpool.(_section).run(0xc2099126e0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:213 +0x2198
created by github.com/ethereum/go-ethereum/blockpool.(_BlockPool).newSection
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:93 +0x4e1

goroutine 413 [chan receive]:
github.com/ethereum/go-ethereum/p2p.(_protoRW).ReadMsg(0xc20a9ae370, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:307 +0x72
github.com/ethereum/go-ethereum/whisper.(_Whisper).msgHandler(0xc2096820e0, 0xc208d784e0, 0x7f00843d23f0, 0xc20a9ae370, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/whisper/whisper.go:156 +0x11d
github.com/ethereum/go-ethereum/whisper._Whisper.(github.com/ethereum/go-ethereum/whisper.msgHandler)·fm(0xc208d784e0, 0x7f00843d23f0, 0xc20a9ae370, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/whisper/whisper.go:61 +0x57
github.com/ethereum/go-ethereum/p2p.func·004()
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:242 +0x88
created by github.com/ethereum/go-ethereum/p2p.(_Peer).startProtocols
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:254 +0x2ad

goroutine 414 [chan receive]:
github.com/ethereum/go-ethereum/p2p.(_protoRW).ReadMsg(0xc20a9ae320, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:307 +0x72
github.com/ethereum/go-ethereum/eth.(_ethProtocol).handle(0xc209b60070, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/eth/protocol.go:167 +0xb9
github.com/ethereum/go-ethereum/eth.runEthProtocol(0x3c, 0x0, 0x7f00843d0538, 0xc209682000, 0x7f00843d0568, 0xc208195450, 0x7f00843d05a0, 0xc209666540, 0xc208d784e0, 0x7f00843d23f0, ...)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/eth/protocol.go:160 +0x5e2
github.com/ethereum/go-ethereum/eth.func·002(0xc208d784e0, 0x7f00843d23f0, 0xc20a9ae320, 0x0, 0x0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/eth/protocol.go:122 +0xa3
github.com/ethereum/go-ethereum/p2p.func·004()
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:242 +0x88
created by github.com/ethereum/go-ethereum/p2p.(*Peer).startProtocols
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/peer.go:254 +0x2ad

goroutine 937 [select]:
github.com/ethereum/go-ethereum/blockpool.(_section).run(0xc20b6b42c0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:213 +0x2198
created by github.com/ethereum/go-ethereum/blockpool.(_BlockPool).newSection
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:93 +0x4e1

goroutine 1227 [IO wait]:
net.(_pollDesc).Wait(0xc20cb4e530, 0x77, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:84 +0x47
net.(_pollDesc).WaitWrite(0xc20cb4e530, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:93 +0x43
net.(_netFD).connect(0xc20cb4e4d0, 0x0, 0x0, 0x7f008d53f4a8, 0xc20dc087c0, 0xeccb6f405, 0x36578739, 0x1253800, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_unix.go:114 +0x24b
net.(_netFD).dial(0xc20cb4e4d0, 0x7f00843d0848, 0x0, 0x7f00843d0848, 0xc20dadb1d0, 0xeccb6f405, 0x36578739, 0x1253800, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/sock_posix.go:139 +0x37a
net.socket(0xbd0cb0, 0x3, 0x2, 0x1, 0x0, 0xc20dadb100, 0x7f00843d0848, 0x0, 0x7f00843d0848, 0xc20dadb1d0, ...)
/home/kobigurk/go/git/go/src/net/sock_posix.go:91 +0x422
net.internetSocket(0xbd0cb0, 0x3, 0x7f00843d0848, 0x0, 0x7f00843d0848, 0xc20dadb1d0, 0xeccb6f405, 0x36578739, 0x1253800, 0x1, ...)
/home/kobigurk/go/git/go/src/net/ipsock_posix.go:137 +0x148
net.dialTCP(0xbd0cb0, 0x3, 0x0, 0xc20dadb1d0, 0xeccb6f405, 0x36578739, 0x1253800, 0xc20daf25a0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/tcpsock_posix.go:156 +0x125
net.dialSingle(0xbd0cb0, 0x3, 0xc20daf2590, 0x10, 0x0, 0x0, 0x7f00843d07e0, 0xc20dadb1d0, 0xeccb6f405, 0x36578739, ...)
/home/kobigurk/go/git/go/src/net/dial.go:235 +0x3f5
net.func·016(0xeccb6f405, 0xe36578739, 0x1253800, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/dial.go:163 +0x12c
net.dial(0xbd0cb0, 0x3, 0x7f00843d07e0, 0xc20dadb1d0, 0xc20bfc3e78, 0xeccb6f405, 0xe36578739, 0x1253800, 0x0, 0x0, ...)
/home/kobigurk/go/git/go/src/net/fd_unix.go:40 +0x6f
net.(_Dialer).Dial(0xc20a1d2200, 0xbd0cb0, 0x3, 0xc20daf2590, 0x10, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/dial.go:170 +0x4be
github.com/ethereum/go-ethereum/p2p.(_Server).dialNode(0xc208122fc0, 0xc2091e0a10)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:332 +0x1e5
github.com/ethereum/go-ethereum/p2p.func·006()
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:313 +0x44
created by github.com/ethereum/go-ethereum/p2p.(*Server).dialLoop
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:317 +0x504

goroutine 905 [select]:
github.com/ethereum/go-ethereum/blockpool.(_section).run(0xc20c76a000)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:213 +0x2198
created by github.com/ethereum/go-ethereum/blockpool.(_BlockPool).newSection
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:93 +0x4e1

goroutine 1005 [select]:
github.com/ethereum/go-ethereum/blockpool.(_section).run(0xc20a8a82c0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:213 +0x2198
created by github.com/ethereum/go-ethereum/blockpool.(_BlockPool).newSection
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:93 +0x4e1

goroutine 1139 [select]:
github.com/ethereum/go-ethereum/blockpool.(_section).run(0xc20a95a160)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:213 +0x2198
created by github.com/ethereum/go-ethereum/blockpool.(_BlockPool).newSection
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:93 +0x4e1

goroutine 1304 [select]:
github.com/ethereum/go-ethereum/blockpool.(_section).run(0xc20b54edc0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:213 +0x2198
created by github.com/ethereum/go-ethereum/blockpool.(_BlockPool).newSection
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:93 +0x4e1

goroutine 1209 [IO wait]:
net.(_pollDesc).Wait(0xc20dc400d0, 0x77, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:84 +0x47
net.(_pollDesc).WaitWrite(0xc20dc400d0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:93 +0x43
net.(_netFD).connect(0xc20dc40070, 0x0, 0x0, 0x7f008d53f4a8, 0xc20dc36060, 0xeccb6f405, 0x365b3a23, 0x1253800, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_unix.go:114 +0x24b
net.(_netFD).dial(0xc20dc40070, 0x7f00843d0848, 0x0, 0x7f00843d0848, 0xc20dc3c030, 0xeccb6f405, 0x365b3a23, 0x1253800, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/sock_posix.go:139 +0x37a
net.socket(0xbd0cb0, 0x3, 0x2, 0x1, 0x0, 0xc20dc3c000, 0x7f00843d0848, 0x0, 0x7f00843d0848, 0xc20dc3c030, ...)
/home/kobigurk/go/git/go/src/net/sock_posix.go:91 +0x422
net.internetSocket(0xbd0cb0, 0x3, 0x7f00843d0848, 0x0, 0x7f00843d0848, 0xc20dc3c030, 0xeccb6f405, 0xc2365b3a23, 0x1253800, 0x1, ...)
/home/kobigurk/go/git/go/src/net/ipsock_posix.go:137 +0x148
net.dialTCP(0xbd0cb0, 0x3, 0x0, 0xc20dc3c030, 0xeccb6f405, 0x365b3a23, 0x1253800, 0xc20dc38080, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/tcpsock_posix.go:156 +0x125
net.dialSingle(0xbd0cb0, 0x3, 0xc20dc36040, 0x13, 0x0, 0x0, 0x7f00843d07e0, 0xc20dc3c030, 0xeccb6f405, 0x365b3a23, ...)
/home/kobigurk/go/git/go/src/net/dial.go:235 +0x3f5
net.func·016(0xeccb6f405, 0xe365b3a23, 0x1253800, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/dial.go:163 +0x12c
net.dial(0xbd0cb0, 0x3, 0x7f00843d07e0, 0xc20dc3c030, 0xc20abdee78, 0xeccb6f405, 0xe365b3a23, 0x1253800, 0x0, 0x0, ...)
/home/kobigurk/go/git/go/src/net/fd_unix.go:40 +0x6f
net.(_Dialer).Dial(0xc20a1d2200, 0xbd0cb0, 0x3, 0xc20dc36040, 0x13, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/dial.go:170 +0x4be
github.com/ethereum/go-ethereum/p2p.(_Server).dialNode(0xc208122fc0, 0xc209fd0380)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:332 +0x1e5
github.com/ethereum/go-ethereum/p2p.func·006()
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:313 +0x44
created by github.com/ethereum/go-ethereum/p2p.(*Server).dialLoop
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:317 +0x504

goroutine 1228 [IO wait]:
net.(_pollDesc).Wait(0xc20cb4e5a0, 0x77, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:84 +0x47
net.(_pollDesc).WaitWrite(0xc20cb4e5a0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:93 +0x43
net.(_netFD).connect(0xc20cb4e540, 0x0, 0x0, 0x7f008d53f4a8, 0xc20dc08820, 0xeccb6f405, 0x3658a7d9, 0x1253800, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_unix.go:114 +0x24b
net.(_netFD).dial(0xc20cb4e540, 0x7f00843d0848, 0x0, 0x7f00843d0848, 0xc20dadb200, 0xeccb6f405, 0x3658a7d9, 0x1253800, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/sock_posix.go:139 +0x37a
net.socket(0xbd0cb0, 0x3, 0x2, 0x1, 0x0, 0xc20dadb200, 0x7f00843d0848, 0x0, 0x7f00843d0848, 0xc20dadb200, ...)
/home/kobigurk/go/git/go/src/net/sock_posix.go:91 +0x422
net.internetSocket(0xbd0cb0, 0x3, 0x7f00843d0848, 0x0, 0x7f00843d0848, 0xc20dadb200, 0xeccb6f405, 0x3658a7d9, 0x1253800, 0x1, ...)
/home/kobigurk/go/git/go/src/net/ipsock_posix.go:137 +0x148
net.dialTCP(0xbd0cb0, 0x3, 0x0, 0xc20dadb200, 0xeccb6f405, 0x3658a7d9, 0x1253800, 0xc20daf25e0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/tcpsock_posix.go:156 +0x125
net.dialSingle(0xbd0cb0, 0x3, 0xc20dc08800, 0x14, 0x0, 0x0, 0x7f00843d07e0, 0xc20dadb200, 0xeccb6f405, 0x3658a7d9, ...)
/home/kobigurk/go/git/go/src/net/dial.go:235 +0x3f5
net.func·016(0xeccb6f405, 0xe3658a7d9, 0x1253800, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/dial.go:163 +0x12c
net.dial(0xbd0cb0, 0x3, 0x7f00843d07e0, 0xc20dadb200, 0xc20ac4ee78, 0xeccb6f405, 0xe3658a7d9, 0x1253800, 0x0, 0x0, ...)
/home/kobigurk/go/git/go/src/net/fd_unix.go:40 +0x6f
net.(_Dialer).Dial(0xc20a1d2200, 0xbd0cb0, 0x3, 0xc20dc08800, 0x14, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/dial.go:170 +0x4be
github.com/ethereum/go-ethereum/p2p.(_Server).dialNode(0xc208122fc0, 0xc2091e0b60)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:332 +0x1e5
github.com/ethereum/go-ethereum/p2p.func·006()
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:313 +0x44
created by github.com/ethereum/go-ethereum/p2p.(*Server).dialLoop
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:317 +0x504

goroutine 1205 [select]:
github.com/ethereum/go-ethereum/blockpool.(_section).run(0xc20c76d600)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:213 +0x2198
created by github.com/ethereum/go-ethereum/blockpool.(_BlockPool).newSection
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:93 +0x4e1

goroutine 1150 [select]:
github.com/ethereum/go-ethereum/blockpool.(_section).run(0xc20a9118c0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:213 +0x2198
created by github.com/ethereum/go-ethereum/blockpool.(_BlockPool).newSection
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:93 +0x4e1

goroutine 930 [select]:
github.com/ethereum/go-ethereum/blockpool.(_peer).run(0xc208132ea0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/peers.go:543 +0x103e
github.com/ethereum/go-ethereum/blockpool.func·006()
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/peers.go:353 +0x38
created by github.com/ethereum/go-ethereum/blockpool.(_BlockPool).switchPeer
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/peers.go:358 +0x4e6

goroutine 1203 [select]:
github.com/ethereum/go-ethereum/blockpool.(_section).run(0xc20c76cb00)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:213 +0x2198
created by github.com/ethereum/go-ethereum/blockpool.(_BlockPool).newSection
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:93 +0x4e1

goroutine 1319 [IO wait]:
net.(_pollDesc).Wait(0xc20cb4e680, 0x77, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:84 +0x47
net.(_pollDesc).WaitWrite(0xc20cb4e680, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:93 +0x43
net.(_netFD).connect(0xc20cb4e620, 0x0, 0x0, 0x7f008d53f4a8, 0xc20dc088c0, 0xeccb6f405, 0x3659b612, 0x1253800, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_unix.go:114 +0x24b
net.(_netFD).dial(0xc20cb4e620, 0x7f00843d0848, 0x0, 0x7f00843d0848, 0xc20dadb260, 0xeccb6f405, 0x3659b612, 0x1253800, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/sock_posix.go:139 +0x37a
net.socket(0xbd0cb0, 0x3, 0x2, 0x1, 0x0, 0xc20dadb200, 0x7f00843d0848, 0x0, 0x7f00843d0848, 0xc20dadb260, ...)
/home/kobigurk/go/git/go/src/net/sock_posix.go:91 +0x422
net.internetSocket(0xbd0cb0, 0x3, 0x7f00843d0848, 0x0, 0x7f00843d0848, 0xc20dadb260, 0xeccb6f405, 0xc23659b612, 0x1253800, 0x1, ...)
/home/kobigurk/go/git/go/src/net/ipsock_posix.go:137 +0x148
net.dialTCP(0xbd0cb0, 0x3, 0x0, 0xc20dadb260, 0xeccb6f405, 0x3659b612, 0x1253800, 0xc20daf2660, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/tcpsock_posix.go:156 +0x125
net.dialSingle(0xbd0cb0, 0x3, 0xc20dc088a0, 0x13, 0x0, 0x0, 0x7f00843d07e0, 0xc20dadb260, 0xeccb6f405, 0x3659b612, ...)
/home/kobigurk/go/git/go/src/net/dial.go:235 +0x3f5
net.func·016(0xeccb6f405, 0xe3659b612, 0x1253800, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/dial.go:163 +0x12c
net.dial(0xbd0cb0, 0x3, 0x7f00843d07e0, 0xc20dadb260, 0xc20bba9e78, 0xeccb6f405, 0xe3659b612, 0x1253800, 0x0, 0x0, ...)
/home/kobigurk/go/git/go/src/net/fd_unix.go:40 +0x6f
net.(_Dialer).Dial(0xc20a1d2200, 0xbd0cb0, 0x3, 0xc20dc088a0, 0x13, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/dial.go:170 +0x4be
github.com/ethereum/go-ethereum/p2p.(_Server).dialNode(0xc208122fc0, 0xc208dfc5b0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:332 +0x1e5
github.com/ethereum/go-ethereum/p2p.func·006()
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:313 +0x44
created by github.com/ethereum/go-ethereum/p2p.(*Server).dialLoop
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:317 +0x504

goroutine 1102 [select]:
github.com/ethereum/go-ethereum/blockpool.(_section).run(0xc20c76c000)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:213 +0x2198
created by github.com/ethereum/go-ethereum/blockpool.(_BlockPool).newSection
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:93 +0x4e1

goroutine 1161 [select]:
github.com/ethereum/go-ethereum/blockpool.(_section).run(0xc20b882000)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:213 +0x2198
created by github.com/ethereum/go-ethereum/blockpool.(_BlockPool).newSection
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:93 +0x4e1

goroutine 1137 [select]:
github.com/ethereum/go-ethereum/blockpool.(_section).run(0xc20ad558c0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:213 +0x2198
created by github.com/ethereum/go-ethereum/blockpool.(_BlockPool).newSection
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:93 +0x4e1

goroutine 1224 [select]:
github.com/ethereum/go-ethereum/blockpool.(_section).run(0xc20b712840)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:213 +0x2198
created by github.com/ethereum/go-ethereum/blockpool.(_BlockPool).newSection
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:93 +0x4e1

goroutine 542 [select]:
github.com/ethereum/go-ethereum/whisper.(_peer).update(0xc20a65e270)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/whisper/peer.go:54 +0x2aa
created by github.com/ethereum/go-ethereum/whisper.(_peer).start
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/whisper/peer.go:40 +0x32

goroutine 1295 [IO wait]:
net.(_pollDesc).Wait(0xc20b42d4f0, 0x77, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:84 +0x47
net.(_pollDesc).WaitWrite(0xc20b42d4f0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:93 +0x43
net.(_netFD).connect(0xc20b42d490, 0x0, 0x0, 0x7f008d53f4a8, 0xc20db81800, 0xeccb6f405, 0x36584db6, 0x1253800, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_unix.go:114 +0x24b
net.(_netFD).dial(0xc20b42d490, 0x7f00843d0848, 0x0, 0x7f00843d0848, 0xc20db5fe60, 0xeccb6f405, 0x36584db6, 0x1253800, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/sock_posix.go:139 +0x37a
net.socket(0xbd0cb0, 0x3, 0x2, 0x1, 0x0, 0xc20db5fe00, 0x7f00843d0848, 0x0, 0x7f00843d0848, 0xc20db5fe60, ...)
/home/kobigurk/go/git/go/src/net/sock_posix.go:91 +0x422
net.internetSocket(0xbd0cb0, 0x3, 0x7f00843d0848, 0x0, 0x7f00843d0848, 0xc20db5fe60, 0xeccb6f405, 0xc236584db6, 0x1253800, 0x1, ...)
/home/kobigurk/go/git/go/src/net/ipsock_posix.go:137 +0x148
net.dialTCP(0xbd0cb0, 0x3, 0x0, 0xc20db5fe60, 0xeccb6f405, 0x36584db6, 0x1253800, 0xc20db822e0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/tcpsock_posix.go:156 +0x125
net.dialSingle(0xbd0cb0, 0x3, 0xc20db817e0, 0x12, 0x0, 0x0, 0x7f00843d07e0, 0xc20db5fe60, 0xeccb6f405, 0x36584db6, ...)
/home/kobigurk/go/git/go/src/net/dial.go:235 +0x3f5
net.func·016(0xeccb6f405, 0xe36584db6, 0x1253800, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/dial.go:163 +0x12c
net.dial(0xbd0cb0, 0x3, 0x7f00843d07e0, 0xc20db5fe60, 0xc20bc20e78, 0xeccb6f405, 0xe36584db6, 0x1253800, 0x0, 0x0, ...)
/home/kobigurk/go/git/go/src/net/fd_unix.go:40 +0x6f
net.(_Dialer).Dial(0xc20a1d2200, 0xbd0cb0, 0x3, 0xc20db817e0, 0x12, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/dial.go:170 +0x4be
github.com/ethereum/go-ethereum/p2p.(_Server).dialNode(0xc208122fc0, 0xc209192a80)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:332 +0x1e5
github.com/ethereum/go-ethereum/p2p.func·006()
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:313 +0x44
created by github.com/ethereum/go-ethereum/p2p.(*Server).dialLoop
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:317 +0x504

goroutine 1321 [IO wait]:
net.(_pollDesc).Wait(0xc20b2f72c0, 0x77, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:84 +0x47
net.(_pollDesc).WaitWrite(0xc20b2f72c0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:93 +0x43
net.(_netFD).connect(0xc20b2f7260, 0x0, 0x0, 0x7f008d53f4a8, 0xc20dc25920, 0xeccb6f405, 0x365ae73f, 0x1253800, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_unix.go:114 +0x24b
net.(_netFD).dial(0xc20b2f7260, 0x7f00843d0848, 0x0, 0x7f00843d0848, 0xc20b4b3800, 0xeccb6f405, 0x365ae73f, 0x1253800, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/sock_posix.go:139 +0x37a
net.socket(0xbd0cb0, 0x3, 0x2, 0x1, 0x0, 0xc20b4b3800, 0x7f00843d0848, 0x0, 0x7f00843d0848, 0xc20b4b3800, ...)
/home/kobigurk/go/git/go/src/net/sock_posix.go:91 +0x422
net.internetSocket(0xbd0cb0, 0x3, 0x7f00843d0848, 0x0, 0x7f00843d0848, 0xc20b4b3800, 0xeccb6f405, 0xc2365ae73f, 0x1253800, 0x1, ...)
/home/kobigurk/go/git/go/src/net/ipsock_posix.go:137 +0x148
net.dialTCP(0xbd0cb0, 0x3, 0x0, 0xc20b4b3800, 0xeccb6f405, 0x365ae73f, 0x1253800, 0xc20b484c10, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/tcpsock_posix.go:156 +0x125
net.dialSingle(0xbd0cb0, 0x3, 0xc20dc25900, 0x11, 0x0, 0x0, 0x7f00843d07e0, 0xc20b4b3800, 0xeccb6f405, 0x365ae73f, ...)
/home/kobigurk/go/git/go/src/net/dial.go:235 +0x3f5
net.func·016(0xeccb6f405, 0xe365ae73f, 0x1253800, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/dial.go:163 +0x12c
net.dial(0xbd0cb0, 0x3, 0x7f00843d07e0, 0xc20b4b3800, 0xc20bfbfe78, 0xeccb6f405, 0xe365ae73f, 0x1253800, 0x0, 0x0, ...)
/home/kobigurk/go/git/go/src/net/fd_unix.go:40 +0x6f
net.(_Dialer).Dial(0xc20a1d2200, 0xbd0cb0, 0x3, 0xc20dc25900, 0x11, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/dial.go:170 +0x4be
github.com/ethereum/go-ethereum/p2p.(_Server).dialNode(0xc208122fc0, 0xc20a4664d0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:332 +0x1e5
github.com/ethereum/go-ethereum/p2p.func·006()
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:313 +0x44
created by github.com/ethereum/go-ethereum/p2p.(*Server).dialLoop
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:317 +0x504

goroutine 1041 [select]:
github.com/ethereum/go-ethereum/blockpool.(_section).run(0xc20b719e40)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:213 +0x2198
created by github.com/ethereum/go-ethereum/blockpool.(_BlockPool).newSection
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:93 +0x4e1

goroutine 910 [select]:
github.com/ethereum/go-ethereum/blockpool.(_section).run(0xc20c76c6e0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:213 +0x2198
created by github.com/ethereum/go-ethereum/blockpool.(_BlockPool).newSection
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:93 +0x4e1

goroutine 973 [IO wait]:
net.(_pollDesc).Wait(0xc20a7b4c30, 0x77, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:84 +0x47
net.(_pollDesc).WaitWrite(0xc20a7b4c30, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:93 +0x43
net.(_netFD).connect(0xc20a7b4bd0, 0x0, 0x0, 0x7f008d53f4a8, 0xc20dbe94c0, 0xeccb6f405, 0x365b7842, 0x1253800, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_unix.go:114 +0x24b
net.(_netFD).dial(0xc20a7b4bd0, 0x7f00843d0848, 0x0, 0x7f00843d0848, 0xc20d8e4e10, 0xeccb6f405, 0x365b7842, 0x1253800, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/sock_posix.go:139 +0x37a
net.socket(0xbd0cb0, 0x3, 0x2, 0x1, 0x0, 0xc20d8e4e00, 0x7f00843d0848, 0x0, 0x7f00843d0848, 0xc20d8e4e10, ...)
/home/kobigurk/go/git/go/src/net/sock_posix.go:91 +0x422
net.internetSocket(0xbd0cb0, 0x3, 0x7f00843d0848, 0x0, 0x7f00843d0848, 0xc20d8e4e10, 0xeccb6f405, 0xc2365b7842, 0x1253800, 0x1, ...)
/home/kobigurk/go/git/go/src/net/ipsock_posix.go:137 +0x148
net.dialTCP(0xbd0cb0, 0x3, 0x0, 0xc20d8e4e10, 0xeccb6f405, 0x365b7842, 0x1253800, 0xc20dbe6470, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/tcpsock_posix.go:156 +0x125
net.dialSingle(0xbd0cb0, 0x3, 0xc20dbe6460, 0x10, 0x0, 0x0, 0x7f00843d07e0, 0xc20d8e4e10, 0xeccb6f405, 0x365b7842, ...)
/home/kobigurk/go/git/go/src/net/dial.go:235 +0x3f5
net.func·016(0xeccb6f405, 0xe365b7842, 0x1253800, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/dial.go:163 +0x12c
net.dial(0xbd0cb0, 0x3, 0x7f00843d07e0, 0xc20d8e4e10, 0xc20a2e2e78, 0xeccb6f405, 0xe365b7842, 0x1253800, 0x0, 0x0, ...)
/home/kobigurk/go/git/go/src/net/fd_unix.go:40 +0x6f
net.(_Dialer).Dial(0xc20a1d2200, 0xbd0cb0, 0x3, 0xc20dbe6460, 0x10, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/dial.go:170 +0x4be
github.com/ethereum/go-ethereum/p2p.(_Server).dialNode(0xc208122fc0, 0xc20a49a230)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:332 +0x1e5
github.com/ethereum/go-ethereum/p2p.func·006()
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:313 +0x44
created by github.com/ethereum/go-ethereum/p2p.(*Server).dialLoop
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:317 +0x504

goroutine 1296 [running]:
goroutine running on other thread; stack unavailable
created by github.com/ethereum/go-ethereum/p2p.(*Server).dialLoop
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:317 +0x504

goroutine 972 [select]:
github.com/ethereum/go-ethereum/blockpool.(_section).run(0xc20b76c000)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:213 +0x2198
created by github.com/ethereum/go-ethereum/blockpool.(_BlockPool).newSection
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:93 +0x4e1

goroutine 829 [select]:
github.com/ethereum/go-ethereum/blockpool.(_section).run(0xc20b71d600)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:213 +0x2198
created by github.com/ethereum/go-ethereum/blockpool.(_BlockPool).newSection
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:93 +0x4e1

goroutine 987 [select]:
github.com/ethereum/go-ethereum/blockpool.(_section).run(0xc20a8a8b00)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:213 +0x2198
created by github.com/ethereum/go-ethereum/blockpool.(_BlockPool).newSection
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:93 +0x4e1

goroutine 974 [IO wait]:
net.(_pollDesc).Wait(0xc20dc56060, 0x77, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:84 +0x47
net.(_pollDesc).WaitWrite(0xc20dc56060, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_poll_runtime.go:93 +0x43
net.(_netFD).connect(0xc20dc56000, 0x0, 0x0, 0x7f008d53f4a8, 0xc20dc4a060, 0xeccb6f405, 0x365c2e09, 0x1253800, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/fd_unix.go:114 +0x24b
net.(_netFD).dial(0xc20dc56000, 0x7f00843d0848, 0x0, 0x7f00843d0848, 0xc20dc54000, 0xeccb6f405, 0x365c2e09, 0x1253800, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/sock_posix.go:139 +0x37a
net.socket(0xbd0cb0, 0x3, 0x2, 0x1, 0x0, 0xc20dc54000, 0x7f00843d0848, 0x0, 0x7f00843d0848, 0xc20dc54000, ...)
/home/kobigurk/go/git/go/src/net/sock_posix.go:91 +0x422
net.internetSocket(0xbd0cb0, 0x3, 0x7f00843d0848, 0x0, 0x7f00843d0848, 0xc20dc54000, 0xeccb6f405, 0xc2365c2e09, 0x1253800, 0x1, ...)
/home/kobigurk/go/git/go/src/net/ipsock_posix.go:137 +0x148
net.dialTCP(0xbd0cb0, 0x3, 0x0, 0xc20dc54000, 0xeccb6f405, 0x365c2e09, 0x1253800, 0xc20dc50020, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/tcpsock_posix.go:156 +0x125
net.dialSingle(0xbd0cb0, 0x3, 0xc20dc4a040, 0x11, 0x0, 0x0, 0x7f00843d07e0, 0xc20dc54000, 0xeccb6f405, 0x365c2e09, ...)
/home/kobigurk/go/git/go/src/net/dial.go:235 +0x3f5
net.func·016(0xeccb6f405, 0xe365c2e09, 0x1253800, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/dial.go:163 +0x12c
net.dial(0xbd0cb0, 0x3, 0x7f00843d07e0, 0xc20dc54000, 0xc20b2a1e78, 0xeccb6f405, 0xe365c2e09, 0x1253800, 0x0, 0x0, ...)
/home/kobigurk/go/git/go/src/net/fd_unix.go:40 +0x6f
net.(_Dialer).Dial(0xc20a1d2200, 0xbd0cb0, 0x3, 0xc20dc4a040, 0x11, 0x0, 0x0, 0x0, 0x0)
/home/kobigurk/go/git/go/src/net/dial.go:170 +0x4be
github.com/ethereum/go-ethereum/p2p.(_Server).dialNode(0xc208122fc0, 0xc20a466540)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:332 +0x1e5
github.com/ethereum/go-ethereum/p2p.func·006()
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:313 +0x44
created by github.com/ethereum/go-ethereum/p2p.(*Server).dialLoop
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/p2p/server.go:317 +0x504

goroutine 1182 [select]:
github.com/ethereum/go-ethereum/blockpool.(_section).run(0xc20c76ab00)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:213 +0x2198
created by github.com/ethereum/go-ethereum/blockpool.(_BlockPool).newSection
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:93 +0x4e1

goroutine 934 [select]:
github.com/ethereum/go-ethereum/blockpool.(_section).run(0xc20a4e0000)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:213 +0x2198
created by github.com/ethereum/go-ethereum/blockpool.(_BlockPool).newSection
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:93 +0x4e1

goroutine 1285 [select]:
github.com/ethereum/go-ethereum/blockpool.(_section).run(0xc20b882dc0)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:213 +0x2198
created by github.com/ethereum/go-ethereum/blockpool.(_BlockPool).newSection
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:93 +0x4e1

goroutine 1298 [select]:
github.com/ethereum/go-ethereum/blockpool.(_section).run(0xc20c76be40)
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:213 +0x2198
created by github.com/ethereum/go-ethereum/blockpool.(_BlockPool).newSection
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/blockpool/section.go:93 +0x4e1

@tgerring
Copy link
Contributor

tgerring commented Apr 8, 2015

Thanks for the report... I'm updated to develop HEAD and I don't see a crash. Please see below:

$ geth --rpc --rpcport 8545 --rpccorsdomain "*"
$ curl -v -X POST -H "Origin: http://foo.com" --data '{"jsonrpc": "2.0","method":"net_peerCount","params": [ ],"id": 1 }' http://127.0.0.1:8545
* Rebuilt URL to: http://127.0.0.1:8545/
* Hostname was NOT found in DNS cache
*   Trying 127.0.0.1...
* Connected to 127.0.0.1 (127.0.0.1) port 8545 (#0)
> POST / HTTP/1.1
> User-Agent: curl/7.37.1
> Host: 127.0.0.1:8545
> Accept: */*
> Origin: http://foo.com
> Content-Length: 66
> Content-Type: application/x-www-form-urlencoded
> 
* upload completely sent off: 66 out of 66 bytes
< HTTP/1.1 200 OK
< Access-Control-Allow-Origin: http://foo.com
< Content-Type: application/json
< Vary: Origin
< Date: Wed, 08 Apr 2015 12:07:31 GMT
< Content-Length: 49
< 
{
    "id": 1,
    "jsonrpc": "2.0",
    "result": "0x7"
* Connection #0 to host 127.0.0.1 left intact
}

@kobigurk
Copy link
Contributor Author

kobigurk commented Apr 8, 2015

it still happens here, scout's honor :-)

@tgerring
Copy link
Contributor

tgerring commented Apr 8, 2015

Which commit are you on for go-ethereum?
What about in $GOPATH/src/github.com/rs/cors?
Was geth installed with godep?

@kobigurk
Copy link
Contributor Author

kobigurk commented Apr 8, 2015

go-ethereum : 6284604
cors: d3da365

used godep

@tgerring
Copy link
Contributor

tgerring commented Apr 8, 2015

Godep should have put your github.com/rs/cors package to commit 6e0c3cb65fc0fdb064c743d176a620e3ca446dfb per

"ImportPath": "github.com/rs/cors",
"Rev": "6e0c3cb65fc0fdb064c743d176a620e3ca446dfb"

Instead, your commit is more recent (master/HEAD as of the time of writing). If you do a godep restore from inside go-ethereum, does that update cors to 6e0c3c?

@tgerring
Copy link
Contributor

tgerring commented Apr 8, 2015

I updated my local rs/cors package to d3da365 and rebuilt geth, still no crash.

$ go build ./cmd/geth/ && ./geth --rpc --rpcport 8222 --rpccorsdomain "*"
$ curl -v -X POST -H "Origin: http://foo.com" --data '{"jsonrpc": "2.0","method":"net_peerCount","params": [ ],"id": 1}' http://127.0.0.1:8222
* Rebuilt URL to: http://127.0.0.1:8222/
* Hostname was NOT found in DNS cache
*   Trying 127.0.0.1...
* Connected to 127.0.0.1 (127.0.0.1) port 8222 (#0)
> POST / HTTP/1.1
> User-Agent: curl/7.37.1
> Host: 127.0.0.1:8222
> Accept: */*
> Origin: http://foo.com
> Content-Length: 66
> Content-Type: application/x-www-form-urlencoded
> 
* upload completely sent off: 66 out of 66 bytes
< HTTP/1.1 200 OK
< Access-Control-Allow-Origin: http://foo.com
< Content-Type: application/json
< Vary: Origin
< Date: Wed, 08 Apr 2015 15:02:01 GMT
< Content-Length: 49
< 
{
    "id": 1,
    "jsonrpc": "2.0",
    "result": "0x0"
* Connection #0 to host 127.0.0.1 left intact
}

@kobigurk
Copy link
Contributor Author

kobigurk commented Apr 8, 2015

I guess it's something in my env then?
I'll try a clean ubuntu 14.10 to see if I can reproduce it.

@tgerring
Copy link
Contributor

tgerring commented Apr 8, 2015

I nuked my local Godeps/_workspace copy of rs/cors, updated the copy in $GOPATH, did a godep save ./... which put the new revision in _workspace. When I build with godep in this case, I get the crash described above.

@tgerring
Copy link
Contributor

tgerring commented Apr 8, 2015

In your crash log, the only code I see running form rpc package is the following (and my match):

created by github.com/ethereum/go-ethereum/rpc.Start
/home/kobigurk/go/src/github.com/ethereum/go-ethereum/rpc/http.go:42 +0x5ac
created by github.com/ethereum/go-ethereum/rpc.Start
/Users/tgerring/go/src/github.com/ethereum/go-ethereum/rpc/http.go:42 +0x5ac

Line 42 is the last line in this snippet:

    var handler http.Handler
    if len(config.CorsDomain) > 0 {
        var opts cors.Options
        opts.AllowedMethods = []string{"POST"}
        opts.AllowedOrigins = []string{config.CorsDomain}

        c := cors.New(opts)
        handler = c.Handler(JSONRPC(pipe))
    } else {
        handler = JSONRPC(pipe)
    }

    go http.Serve(l, handler)

@kobigurk
Copy link
Contributor Author

kobigurk commented Apr 8, 2015

look in the first few lines - the rs package is there.
specifically, look for "cors.go".

@tgerring
Copy link
Contributor

tgerring commented Apr 8, 2015

I do see that, but I'm not keen on debugging their package right now since we've versioned a working commit at 6e0c3c and this is what binaries are built from. :)

@kobigurk
Copy link
Contributor Author

kobigurk commented Apr 8, 2015

oh, hm, now I get you. I'll try nuking my godep workspace I guess, and see it it puts the right version. I'll remove the local rs package as well.

@obscuren
Copy link
Contributor

obscuren commented Apr 8, 2015

Please close if this is an issue with a different version then we're using.

@kobigurk
Copy link
Contributor Author

kobigurk commented Apr 8, 2015

Probably a version thing, will try a clean install and will re-open if it persists.

@kobigurk kobigurk closed this as completed Apr 8, 2015
@kobigurk
Copy link
Contributor Author

kobigurk commented Apr 8, 2015

OK, by @obscuren's suggestion, refreshing with "rm -rf $GOPATH/pkg" worked

ngtuna added a commit to ngtuna/tomochain that referenced this issue Sep 3, 2019
…asternodes-only

Snapshot for masternodes only
tony-ricciardi pushed a commit to tony-ricciardi/go-ethereum that referenced this issue Jan 20, 2022
* make celo-node Dockerfile less error-prone

* update comments on args
maoueh pushed a commit to streamingfast/go-ethereum that referenced this issue Jun 9, 2023
* Adding in Mumbai/Mainnet precursor deb packaging for tests to use during upgrade(iterations to come)

* Added changes per discussion in PR, more changes may be necessary

* Adding prerelease true

* Disabling goreleaser

* Removing README swap file

* change bor_dir and add bor user for v0.3.0 release

* rollback bor user and use root

* metrics: handle equal to separated config flag (ethereum#596)

* metrics: handle  based config path

* internal/cli/server: add more context to logs

* use space separated flag and value in bor.service

* fixed static-nodes related buf (os independent) (ethereum#598)

* fixed static-nodes related buf (os independent)

* taking static-nodes as input if default not present

* Update default flags (ethereum#600)

* internal/cli/server: use geth's default for txpool.pricelimit and add comments

* builder/files: update config.toml for mainnet

* packaging/templates: update defaults for mainnet and mumbai

* internal/cli/server: skip overriding cache

* packaging/templates: update cache value for mainnet

* packaging/templates: update gcmode for archive mumbai node

* metrics: handle nil telemetry config (ethereum#601)

* resolve merge conflicts

* update go version in release.yml

* update goversion in makefile

* update Docker login for goreleaser-cross v1.19

* Cleanup for the packager to use git tag in the package profile naming. Added conditional check for directory structure, this is in prep for v0.3.1, as this will create a failure on upgrade path in package due to file exist

* added a toml configuration file with comments describing each flag (ethereum#607)

* added a toml configuration file with comments describing each flag

* internal/cli/server: update flag description

* docs/cli: update example config and description of flags

* docs: update new-cli docs

Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* Adding of 0.3.0 package changes, control file updates, postinst changes, and packager update

* added ancient datadir flag and toml field, need to decide on default value and update the conversion script

* updated toml files with ancient field

* Add support for new flags in new config.toml, which were present in old config.toml (ethereum#612)

* added HTTPTimeouts, and TrieTimeout flag in new tol, from old toml

* added RAW fields for these time.Duration flags

* updated the conversion script to support these extra 4 flags

* removed hcl and json config tests as we are only supporting toml config files

* updated toml files with cache.timeout field

* updated toml files with jsonrpc.timeouts field

* tests/bor: expect a call for latest checkpoint

* tests/bor: expect a call for latest checkpoint

* packaging/templates: update cache values for archive nodes

Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* remove unwanted code

* Fix docker publish authentication issue

In gorelease-cross 1.19+, dockerhub authentication will require docker
logion action followed by mounting docker config file. See
https://github.com/goreleaser/goreleaser-cross#github-actions.

* Revert "update Docker login for goreleaser-cross v1.19"

This reverts commit 4d19cf5.

* Bump version to stable

* Revert "Merge pull request ethereum#435 from maticnetwork/POS-553"

This reverts commit 657d262, reversing
changes made to 88dbfa1.

* revert change for release for go1.19

* Add default values to CLI helper and docs

This commit adds default values to CLI helper and docs. When the default value of a string flag, slice string flag, or map string flag is empty, its helper message won't show any default value.

* Add a summary of new CLI in docs

* Updating packager as binutils changed version so that apt-get installs current versions

* Add state pruning to new CLI

* Minor wording fix in prune state description

* Bumping control file versions

* Mainnet Delhi fork

* Set version to stable

* change delhi hardfork block number

* handle future chain import and skip peer drop (ethereum#650)

* handle future chain import and skip peer drop

* add block import metric

* params: bump version to v0.3.3-stable

* Bump bor version in control files for v0.3.3 mainnet release

Co-authored-by: Daniel Jones <djones@polygon.technology>
Co-authored-by: Will Button <wbutton@polygon.technology>
Co-authored-by: Will Button <will@willbutton.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Daniel Jones <105369507+djpolygon@users.noreply.github.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
maoueh pushed a commit to streamingfast/go-ethereum that referenced this issue Jun 9, 2023
* commit logs

* CI: test launch devnet without hardcoded sleep time (pos-534)

* CI: try using checked out bor path

* CI: fix missing ;

* CI: fix assignment operator

* CI: echo peers and block no.

* CI: cleanup

* minor chg: add new line

* dev: add: pos-944: snyk and govuln integration (ethereum#578)

* dev: add: pos-944 security ci and readme

* dev: add: pos-944 remove linters as this is included already in build ci

* dev: chg: pos-947 dependencies upgrade to solve snyk security issues

* dev: chg: update security-ci

* dev: chg: remove linter to allow replacements for security issues

* dev: add: pos-944 verify path when updating metrics from config

* dev: add: pos-944 fix linter

* dev: add: pos-944 add .snyk policy file / fix snyk code vulnerabilities

* dev: fix: pos-944 import common package / gitignore snyk dccache file

* dev: fix: pos-944 verify canonical path for crashers

* dev: fix: pos-944 linter

* dev: add: pos-976 add govuln check

* dev: add: pos-976 test upload with permissions

* dev: add: pos-976 remove duplicated upload

* dev: add: pos-976 report upload

* dev: add: pos-976 remove upload

* dev: fix: pos-944 fix govuln action

* dev: fix: pos-944 move govulncheck to security-ci

* dev: fix: pos-944 bump golvun action and golang versions

* dev: fix: pos-944 remove persmissions and fix conflicts

* dev: chg: restore err msg

* dev: chg: remove duplicated function

* dev: chg: sort import

* dev: chg: fix linter

* dev: add: use common VerifyCrasher function to avoid duplications / replace deprecated ioutils.ReadFile

* dev: fix: typo

* fix linters

* upgrade grpc version

* add ignore rule for net/http2

* Shivam/txpool tracing (ethereum#604)

* lock, unlock to rlock, runlock

* add : tracing Pending() and Locals()

* Log time spent in committing a tx during mining

* Remove data from logging

* Move log into case where a tx completes without error

* profile fillTransactions

* fix conflict

* bug fixes

* add logs

* txpool: add tracing in Pending()

* rearrange tracing

* add attributes

* fix

* fix

* log error in profiling

* update file mode and file path for profiling

* full profiling

* fix log

* fix log

* less wait

* fix

* fix

* logs

* worker: use block number for prof files

* initial

* txList add

* fix gas calculation

* fix

* green tests

* linters

* prettify

* allocate less

* no locks between pending and reorg

* no locks

* no locks on locals

* more tests

* linters

* less allocs

* comment

* optimize errors

* linters

* fix

* fix

* Linters

* linters

* linters

* simplify errors

* atomics for transactions

* fix

* optimize workers

* fix copy

* linters

* txpool tracing

* linters

* fix tracing

* duration in mcs

* locks

* metrics

* fix

* cache hit/miss

* less locks on evict

* remove once

* remove once

* switch off pprof

* fix data race

* fix data race

* add : sealed total/empty blocks metric gauge

* add : RPC debug_getTraceStack

* fix : RPC debug_getTraceStack

* fix : RPC debug_getTraceStack for all go-routines

* linters

* add data race test on txpool

* fix concurrency

* noleak

* increase batch size

* prettify

* tests

* baseFee mutex

* panic fix

* linters

* fix gas fee data race

* linters

* more transactions

* debug

* debug

* fix ticker

* fix test

* add cacheMu

* more tests

* fix test panic

* linters

* add statistics

* add statistics

* txitems data race

* fix tx list Has

* fix : lint

Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Reduce txArriveTimeout to 100ms

* init : remove exit on keystore err

* add : multiple keystore tolerance

* lint : fix linters

* chg : use standard logging

* chg : logging strings

* Added flags to run heimdall as a child process (ethereum#597)

* Added flags to run heimdall as a child process

* Fix: Lint

* Fix btcd package dependency for CI

* Update btcd package version

* Try removing ambigious importts

* dev: fix: lint fix for parallel tests

* remove delete for ambigious import

* Remove unwanted space

* go mod tidy

* try replace

* try replace

* use vendor

* rename vendor

* tidy

* vendor btcec

* clean up

* remove submodule

* remove submodule

* remove submodule

* remove submodule

* remove vendor & added replacer in test

* go mod tidy

* added replacer

* Update replacer

* Update replacer

* Merge branch 'develop' into run-heimdall-flags

* Skip TestGolangBindings

* Typo fix

* Remove unwanted changes

Co-authored-by: marcello33 <marcelloardizzone@hotmail.it>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* dev: chg: update PR template to include nodes audience check (ethereum#641)

* dev: chg: update PR template to include nodes audience check

* dev: chg: better description

* dev: chg: add entry to changes too

* sonarqube integration (ethereum#658)

* dev: add: sonarqube integration into security-ci

* dev: add: exclude java files from sonarqube analysis

* Merge branch 'qa' and 'master' into develop (ethereum#663)

* Adding in Mumbai/Mainnet precursor deb packaging for tests to use during upgrade(iterations to come)

* Added changes per discussion in PR, more changes may be necessary

* Adding prerelease true

* Disabling goreleaser

* Removing README swap file

* change bor_dir and add bor user for v0.3.0 release

* rollback bor user and use root

* metrics: handle equal to separated config flag (ethereum#596)

* metrics: handle  based config path

* internal/cli/server: add more context to logs

* use space separated flag and value in bor.service

* fixed static-nodes related buf (os independent) (ethereum#598)

* fixed static-nodes related buf (os independent)

* taking static-nodes as input if default not present

* Update default flags (ethereum#600)

* internal/cli/server: use geth's default for txpool.pricelimit and add comments

* builder/files: update config.toml for mainnet

* packaging/templates: update defaults for mainnet and mumbai

* internal/cli/server: skip overriding cache

* packaging/templates: update cache value for mainnet

* packaging/templates: update gcmode for archive mumbai node

* metrics: handle nil telemetry config (ethereum#601)

* resolve merge conflicts

* update go version in release.yml

* update goversion in makefile

* update Docker login for goreleaser-cross v1.19

* Cleanup for the packager to use git tag in the package profile naming. Added conditional check for directory structure, this is in prep for v0.3.1, as this will create a failure on upgrade path in package due to file exist

* added a toml configuration file with comments describing each flag (ethereum#607)

* added a toml configuration file with comments describing each flag

* internal/cli/server: update flag description

* docs/cli: update example config and description of flags

* docs: update new-cli docs

Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* Adding of 0.3.0 package changes, control file updates, postinst changes, and packager update

* added ancient datadir flag and toml field, need to decide on default value and update the conversion script

* updated toml files with ancient field

* Add support for new flags in new config.toml, which were present in old config.toml (ethereum#612)

* added HTTPTimeouts, and TrieTimeout flag in new tol, from old toml

* added RAW fields for these time.Duration flags

* updated the conversion script to support these extra 4 flags

* removed hcl and json config tests as we are only supporting toml config files

* updated toml files with cache.timeout field

* updated toml files with jsonrpc.timeouts field

* tests/bor: expect a call for latest checkpoint

* tests/bor: expect a call for latest checkpoint

* packaging/templates: update cache values for archive nodes

Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* remove unwanted code

* Fix docker publish authentication issue

In gorelease-cross 1.19+, dockerhub authentication will require docker
logion action followed by mounting docker config file. See
https://github.com/goreleaser/goreleaser-cross#github-actions.

* Revert "update Docker login for goreleaser-cross v1.19"

This reverts commit 4d19cf5.

* Bump version to stable

* Revert "Merge pull request ethereum#435 from maticnetwork/POS-553"

This reverts commit 657d262, reversing
changes made to 88dbfa1.

* revert change for release for go1.19

* Add default values to CLI helper and docs

This commit adds default values to CLI helper and docs. When the default value of a string flag, slice string flag, or map string flag is empty, its helper message won't show any default value.

* Add a summary of new CLI in docs

* Updating packager as binutils changed version so that apt-get installs current versions

* Add state pruning to new CLI

* Minor wording fix in prune state description

* Bumping control file versions

* Mainnet Delhi fork

* Set version to stable

* change delhi hardfork block number

* handle future chain import and skip peer drop (ethereum#650)

* handle future chain import and skip peer drop

* add block import metric

* params: bump version to v0.3.3-stable

* Bump bor version in control files for v0.3.3 mainnet release

Co-authored-by: Daniel Jones <djones@polygon.technology>
Co-authored-by: Will Button <wbutton@polygon.technology>
Co-authored-by: Will Button <will@willbutton.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Daniel Jones <105369507+djpolygon@users.noreply.github.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>

* CI: use matic-cli master branch

* trigger ci

* internal/cli/server : fix : added triesInMemory in config (ethereum#677)

* update requirements in README (ethereum#681)

* consensus/bor : add : devFakeAuthor flag

* core,eth,internal/cli,internal/ethapi: add --rpc.allow-unprotected-txs flag to allow txs to get replayed (for shadow node)

* internal/cli: add `skiptrace` flag for profiling (ethereum#715)

* internal/cli: add skiptrace flag

* docs: update docs for skiptrace flag

* Added flag in Status to wait for backend, and fixed panic issue. (ethereum#708)

* checking if backend is available during status call, and added a flag to wait if backend is not available

* added test for status command (does not cover the whole code)

* Revert "Reduce txArriveTimeout to 100ms" (ethereum#707)

This reverts commit 243d231.

* consensus/bor : add : devFakeAuthor flag (ethereum#697)

* add check for empty lists in txpool (ethereum#704)

* add check

* linters

* dev: chg: POS-215 move sonarqube to own ci (ethereum#733)

* Added verbosity flag, supports log-level as well, but will remove that in future. (ethereum#722)

* changed log-level flag back to verbosity, and updated the conversion script

* supporting both verbosity and log-level, with a message to deprecat log-level

* converted verbosity to a int value

* Check if block is nil to prevent panic (ethereum#736)

* miner: use env for tracing instead of block object (ethereum#728)

* Add : mutex pprof profile (ethereum#731)

* add : mutex pprof profile

* rm : remove trace from default pprof profiles

* chg : commit tx logs from info to debug (ethereum#673)

* chg : commit tx logs from info to debug

* fix : minor changes

* chg : miner : commitTransactions-stats moved from info to debug

* lint : fix linters

* refactor logging

* miner : chg : UnauthorizedSignerError to debug

* lint : fix lint

* fix : log.Logger interface compatibility

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Add : commit details to bor version (ethereum#730)

* add : commit details to bor version

* fix : MAKEFILE

* undo : rm test-txpool-race

* rm : params/build_date

* rm : params/gitbranch and params/gitdate

* core,docs/cli,internal/cli/server: make docs

* builder,docs/cli,packaging: update toml files

* mardizzone/hotfix-snyk: remove vcs build when running snyk (ethereum#745)

* Feat : SetMaxPeers (ethereum#726)

* init : add admin.setMaxPeers and getMaxPeers

* lint : fix lint

* add : some comments

* Update wiki link (ethereum#762)

* Heimdall App implementation (ethereum#646)

* added support for miner.recommit flag (ethereum#743)

* interrupting commit experiment (ethereum#556)

* initial

* delete

* linters

* big benchmark

* benchmark big ints

* delay

* fix generate

* remove debug

* miner : chg : remove noempty check

* fix lints

* consensus/bor: handle unauthorized signer in consensus.Prepare (ethereum#651)

* fix : break loop fix

* lint : fix

* lint : more lint fix

* fix : skip TestEmptyWorkEthash and TestEmptyWorkClique

* add : metrics commitInterruptCounter

---------

Co-authored-by: Shivam Sharma <shivam691999@gmail.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* internal/cli: added missing flags (ethereum#744)

* minor comment update

* added support for rpc.evmtimeout flag

* added support for vmdebug (EnablePreimageRecording) flag

* added support for jsonrpc.auth.(jwtsecret, addr, port, vhosts) flags

* added support for miner.recommit flag

* added support for gpo.maxheaderhistory and gpo.maxblockhistory flag

* Revert "added support for miner.recommit flag"

This reverts commit fcb722e4bf5bdda23d4c91da40ab95c9023a80c3.

* added pprof related flags (expect --pprof.cpuprofile - Write CPU profile to the given file)

* added support for --dev.gaslimit flag

* added support for --fdlimit flag

* added support for --netrestrict flag

* added support for --nodekey and --nodekeyhex flag

* added support for --vmodule, --log.json, --log.backtrace, and --log.debug flags

* fixed related lint errors

* fix lints from develop (few lints decided to appear from code that was untouched, weird)

* more weird lints from develop

* small precautionary fix

* small bug ;) fix in NetRestrict

* weird lints

* change vmdebug = true to vmdebug = false

* internal/ethapi: set rpc gas cap as default gas limit when creating access list

* add : testcase for CommitInterruptExperiment (ethereum#792)

* add : TestCommitInterruptExperimentBor

* lint : fix lint

* chg : add waitgroup

* dev: chg: continue on error when uploading snyk results to GH (ethereum#795)

* consensus/bor: revert handle unauthorized signer in consensus.Prepare

* Revert "consensus/bor: handle unauthorized signer in consensus.Prepare (ethereum#651)"

This reverts commit 9ce8c7de75a1b5021bb6f2b8086e813c8244b22c.

* eth/downloader/whitelist: skip future chain validation (ethereum#796)

* eth/downloader/whitelist: skip future chain validation

* eth/downloader/whitelist: fix tests for future chain import

* Setting up bor to use hosted 18.04 runner as ubuntu provided 18.04 runner is end of life

* Merge qa to develop (ethereum#814)

* Adding in Mumbai/Mainnet precursor deb packaging for tests to use during upgrade(iterations to come)

* Added changes per discussion in PR, more changes may be necessary

* Adding prerelease true

* Disabling goreleaser

* Removing README swap file

* change bor_dir and add bor user for v0.3.0 release

* rollback bor user and use root

* metrics: handle equal to separated config flag (ethereum#596)

* metrics: handle  based config path

* internal/cli/server: add more context to logs

* use space separated flag and value in bor.service

* fixed static-nodes related buf (os independent) (ethereum#598)

* fixed static-nodes related buf (os independent)

* taking static-nodes as input if default not present

* Update default flags (ethereum#600)

* internal/cli/server: use geth's default for txpool.pricelimit and add comments

* builder/files: update config.toml for mainnet

* packaging/templates: update defaults for mainnet and mumbai

* internal/cli/server: skip overriding cache

* packaging/templates: update cache value for mainnet

* packaging/templates: update gcmode for archive mumbai node

* metrics: handle nil telemetry config (ethereum#601)

* resolve merge conflicts

* update go version in release.yml

* update goversion in makefile

* update Docker login for goreleaser-cross v1.19

* Cleanup for the packager to use git tag in the package profile naming. Added conditional check for directory structure, this is in prep for v0.3.1, as this will create a failure on upgrade path in package due to file exist

* added a toml configuration file with comments describing each flag (ethereum#607)

* added a toml configuration file with comments describing each flag

* internal/cli/server: update flag description

* docs/cli: update example config and description of flags

* docs: update new-cli docs

Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* Adding of 0.3.0 package changes, control file updates, postinst changes, and packager update

* added ancient datadir flag and toml field, need to decide on default value and update the conversion script

* updated toml files with ancient field

* Add support for new flags in new config.toml, which were present in old config.toml (ethereum#612)

* added HTTPTimeouts, and TrieTimeout flag in new tol, from old toml

* added RAW fields for these time.Duration flags

* updated the conversion script to support these extra 4 flags

* removed hcl and json config tests as we are only supporting toml config files

* updated toml files with cache.timeout field

* updated toml files with jsonrpc.timeouts field

* tests/bor: expect a call for latest checkpoint

* tests/bor: expect a call for latest checkpoint

* packaging/templates: update cache values for archive nodes

Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* remove unwanted code

* Fix docker publish authentication issue

In gorelease-cross 1.19+, dockerhub authentication will require docker
logion action followed by mounting docker config file. See
https://github.com/goreleaser/goreleaser-cross#github-actions.

* Revert "update Docker login for goreleaser-cross v1.19"

This reverts commit 4d19cf5.

* Bump version to stable

* Revert "Merge pull request ethereum#435 from maticnetwork/POS-553"

This reverts commit 657d262, reversing
changes made to 88dbfa1.

* revert change for release for go1.19

* Add default values to CLI helper and docs

This commit adds default values to CLI helper and docs. When the default value of a string flag, slice string flag, or map string flag is empty, its helper message won't show any default value.

* Add a summary of new CLI in docs

* Updating packager as binutils changed version so that apt-get installs current versions

* Add state pruning to new CLI

* Minor wording fix in prune state description

* Bumping control file versions

* Mainnet Delhi fork

* Set version to stable

* change delhi hardfork block number

* handle future chain import and skip peer drop (ethereum#650)

* handle future chain import and skip peer drop

* add block import metric

* params: bump version to v0.3.3-stable

* Bump bor version in control files for v0.3.3 mainnet release

* Added checks to RPC requests and introduced new flags to customise the parameters (ethereum#657)

* added a check to reject rpc requests with batch size > the one set using a newly added flag (rpcbatchlimit)

* added a check to reject rpc requests whose result size > the one set using a newly added flag (rpcreturndatalimit)

* updated the config files and docs

* chg : trieTimeout from 60 to 10 mins (ethereum#692)

* chg : trieTimeout from 60 to 10 mins

* chg : cache.timout to 10m from 1h in configs

* internal/cli/server : fix : added triesInMemory in config (ethereum#691)

* changed version from 0.3.0 to 0.3.4-beta (ethereum#693)

* fix nil state-sync issue, increase grpc limit (ethereum#695)

* Increase grpc message size limit in pprof

* consensus/bor/bor.go : stateSyncs init fixed [Fix ethereum#686]

* eth/filters: handle nil state-sync before notify

* eth/filters: update check

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>

* core, tests/bor: add more tests for state-sync validation (ethereum#710)

* core: add get state sync function for tests

* tests/bor: add validation for state sync events post consensus

* Arpit/temp bor sync (ethereum#701)

* Increase grpc message size limit in pprof

* ReadBorReceipts improvements

* use internal function

* fix tests

* fetch geth upstread for ReadBorReceiptRLP

* Only query bor receipt when the query index is equal to # tx in block body

This change reduces the frequency of calling ReadBorReceipt and
ReadBorTransaction, which are CPU and db intensive.

* Revert "fetch geth upstread for ReadBorReceiptRLP"

This reverts commit 2e838a6b1313d26674f3a8df4b044e35dcbf35a0.

* Restore ReadBorReceiptRLP

* fix bor receipts

* remove unused

* fix lints

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Revert "chg : trieTimeout from 60 to 10 mins (ethereum#692)" (ethereum#720)

This reverts commit 241843c.

* Arpit/add execution pool 2 (ethereum#719)

* initial

* linters

* linters

* remove timeout

* update pool

* change pool size function

* check nil

* check nil

* fix tests

* Use execution pool from server in all handlers

* simplify things

* test fix

* add support for cli, config

* add to cli and config

* merge base branch

* debug statements

* fix bug

* atomic pointer timeout

* add apis

* update workerpool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* fix tests

* mutex

* refactor flag and value names

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* debug statements

* fix bug

* update workerpool

* atomic pointer timeout

* add apis

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* merge base branch

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* mutex

* fix tests

* Merge branch 'arpit/add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* Change default size of execution pool to 40

* refactor flag and value names

* fix merge conflicts

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* fix linters

* fix go.mod

* change sec to ms

* change default value for ep timeout

* fix node api calls

* comment setter for ep timeout

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* version change (ethereum#721)

* Event based pprof (ethereum#732)

* feature

* Save pprof to /tmp

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>

* Cherry-pick changes from develop (ethereum#738)

* Check if block is nil to prevent panic (ethereum#736)

* miner: use env for tracing instead of block object (ethereum#728)

---------

Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* add max code init size check in txpool (ethereum#739)

* Revert "Event based pprof" and update version (ethereum#742)

* Revert "Event based pprof (ethereum#732)"

This reverts commit 22fa403.

* params: update version to 0.3.4-beta3

* packaging/templates: update bor version

* internal/ethapi :: Fix : newRPCTransactionFromBlockIndex

* Merge master to qa (ethereum#813)

* Merge qa to master (ethereum#750)

* Added checks to RPC requests and introduced new flags to customise the parameters (ethereum#657)

* added a check to reject rpc requests with batch size > the one set using a newly added flag (rpcbatchlimit)

* added a check to reject rpc requests whose result size > the one set using a newly added flag (rpcreturndatalimit)

* updated the config files and docs

* chg : trieTimeout from 60 to 10 mins (ethereum#692)

* chg : trieTimeout from 60 to 10 mins

* chg : cache.timout to 10m from 1h in configs

* internal/cli/server : fix : added triesInMemory in config (ethereum#691)

* changed version from 0.3.0 to 0.3.4-beta (ethereum#693)

* fix nil state-sync issue, increase grpc limit (ethereum#695)

* Increase grpc message size limit in pprof

* consensus/bor/bor.go : stateSyncs init fixed [Fix ethereum#686]

* eth/filters: handle nil state-sync before notify

* eth/filters: update check

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>

* core, tests/bor: add more tests for state-sync validation (ethereum#710)

* core: add get state sync function for tests

* tests/bor: add validation for state sync events post consensus

* Arpit/temp bor sync (ethereum#701)

* Increase grpc message size limit in pprof

* ReadBorReceipts improvements

* use internal function

* fix tests

* fetch geth upstread for ReadBorReceiptRLP

* Only query bor receipt when the query index is equal to # tx in block body

This change reduces the frequency of calling ReadBorReceipt and
ReadBorTransaction, which are CPU and db intensive.

* Revert "fetch geth upstread for ReadBorReceiptRLP"

This reverts commit 2e838a6b1313d26674f3a8df4b044e35dcbf35a0.

* Restore ReadBorReceiptRLP

* fix bor receipts

* remove unused

* fix lints

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Revert "chg : trieTimeout from 60 to 10 mins (ethereum#692)" (ethereum#720)

This reverts commit 241843c.

* Arpit/add execution pool 2 (ethereum#719)

* initial

* linters

* linters

* remove timeout

* update pool

* change pool size function

* check nil

* check nil

* fix tests

* Use execution pool from server in all handlers

* simplify things

* test fix

* add support for cli, config

* add to cli and config

* merge base branch

* debug statements

* fix bug

* atomic pointer timeout

* add apis

* update workerpool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* fix tests

* mutex

* refactor flag and value names

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* debug statements

* fix bug

* update workerpool

* atomic pointer timeout

* add apis

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* merge base branch

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* mutex

* fix tests

* Merge branch 'arpit/add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* Change default size of execution pool to 40

* refactor flag and value names

* fix merge conflicts

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* fix linters

* fix go.mod

* change sec to ms

* change default value for ep timeout

* fix node api calls

* comment setter for ep timeout

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* version change (ethereum#721)

* Event based pprof (ethereum#732)

* feature

* Save pprof to /tmp

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>

* Cherry-pick changes from develop (ethereum#738)

* Check if block is nil to prevent panic (ethereum#736)

* miner: use env for tracing instead of block object (ethereum#728)

---------

Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* add max code init size check in txpool (ethereum#739)

* Revert "Event based pprof" and update version (ethereum#742)

* Revert "Event based pprof (ethereum#732)"

This reverts commit 22fa403.

* params: update version to 0.3.4-beta3

* packaging/templates: update bor version

* params, packaging/templates: update bor version

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* core, miner: add sub-spans for tracing (ethereum#753)

* core, miner: add sub-spans for tracing

* fix linters

* core: add logs for debugging

* core: add more logs to print tdd while reorg

* fix linters

* core: minor fix

* core: remove debug logs

* core: use different span for write block and set head

* core: use internal context for sending traces (ethereum#755)

* core: add : impossible reorg block dump (ethereum#754)

* add : impossible reorg block dump

* chg : 3 seperate files for impossoble reorg dump

* add : use exportBlocks method and RLP blocks before writing

* chg : small changes

* bump : go version from 1.19 to 1.20.1 (ethereum#761)

* Revert "bump : go version from 1.19 to 1.20.1 (ethereum#761)"

This reverts commit 4561012.

* core/vm: use optimized bigint (ethereum#26021)

* Add holiman/big

* Fix linter

* Bump version to v0.3.5

* fix lints from develop (few lints decided to appear from code that was untouched, weird)

* upgrade crypto lib version (ethereum#770)

* bump dep : github.com/Masterminds/goutils to v1.1.1 (ethereum#769)

* mardizzone/pos-1313: bump crypto dependency (ethereum#772)

* dev: chg: bumd net dependency

* dev: chg: bump crypto dependency

* dev: chg: bump crypto dependency

* bump dep : golang.org/x/net to v0.8.0 (ethereum#771)

* Verify validator set against local contract on receiving an end-of-sprint block (ethereum#768)

* Verify validator set against local contract on receiving an end-of-sprint block

* Fix tests

* Respect error returned by ParseValidators

* Keep going back until a parent block presents

* core/txpool: implement DoS defenses from geth (ethereum#778)

* Hotfixes and deps bump (ethereum#776)

* dev: chg: bump deps

* internal/cli/server, rpc: lower down http readtimeout to 10s

* dev: chg: get p2p adapter

* dev: chg: lower down jsonrpc readtimeout to 10s

* cherry-pick txpool optimisation changes

* add check for empty lists in txpool (ethereum#704)

* add check

* linters

* core, miner: add empty instrumentation name for tracing

---------

Co-authored-by: Raneet Debnath <raneetdebnath10@gmail.com>
Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Evgeny Danilenko <6655321@bk.ru>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* packaging,params: bump to v0.3.6 (ethereum#782)

* v0.3.6 fix (ethereum#787)

* Fix get validator set in header verifier

* chg : commit tx logs from info to debug (ethereum#673)

* chg : commit tx logs from info to debug

* fix : minor changes

* chg : miner : commitTransactions-stats moved from info to debug

* lint : fix linters

* refactor logging

* miner : chg : UnauthorizedSignerError to debug

* lint : fix lint

* fix : log.Logger interface compatibility

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Remove unnecessary sorting of valset from header in verification

* dev: chg: version bump

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: marcello33 <marcelloardizzone@hotmail.it>

* core: improve locks in txpool (ethereum#807)

* added a write lock to the txs.filter method and a read lock to the txs.reheap method - both of which are called by Filter during reorg adjustments to txpool

* txpool reorg locks

* more locks

* locks

* linters

* params, packaging: update version for v0.3.8-beta release

* core: add logs in reheap

---------

Co-authored-by: Alex <dalexwatts@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Merge qa to master (ethereum#808)

* Added checks to RPC requests and introduced new flags to customise the parameters (ethereum#657)

* added a check to reject rpc requests with batch size > the one set using a newly added flag (rpcbatchlimit)

* added a check to reject rpc requests whose result size > the one set using a newly added flag (rpcreturndatalimit)

* updated the config files and docs

* chg : trieTimeout from 60 to 10 mins (ethereum#692)

* chg : trieTimeout from 60 to 10 mins

* chg : cache.timout to 10m from 1h in configs

* internal/cli/server : fix : added triesInMemory in config (ethereum#691)

* changed version from 0.3.0 to 0.3.4-beta (ethereum#693)

* fix nil state-sync issue, increase grpc limit (ethereum#695)

* Increase grpc message size limit in pprof

* consensus/bor/bor.go : stateSyncs init fixed [Fix ethereum#686]

* eth/filters: handle nil state-sync before notify

* eth/filters: update check

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>

* core, tests/bor: add more tests for state-sync validation (ethereum#710)

* core: add get state sync function for tests

* tests/bor: add validation for state sync events post consensus

* Arpit/temp bor sync (ethereum#701)

* Increase grpc message size limit in pprof

* ReadBorReceipts improvements

* use internal function

* fix tests

* fetch geth upstread for ReadBorReceiptRLP

* Only query bor receipt when the query index is equal to # tx in block body

This change reduces the frequency of calling ReadBorReceipt and
ReadBorTransaction, which are CPU and db intensive.

* Revert "fetch geth upstread for ReadBorReceiptRLP"

This reverts commit 2e838a6b1313d26674f3a8df4b044e35dcbf35a0.

* Restore ReadBorReceiptRLP

* fix bor receipts

* remove unused

* fix lints

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Revert "chg : trieTimeout from 60 to 10 mins (ethereum#692)" (ethereum#720)

This reverts commit 241843c.

* Arpit/add execution pool 2 (ethereum#719)

* initial

* linters

* linters

* remove timeout

* update pool

* change pool size function

* check nil

* check nil

* fix tests

* Use execution pool from server in all handlers

* simplify things

* test fix

* add support for cli, config

* add to cli and config

* merge base branch

* debug statements

* fix bug

* atomic pointer timeout

* add apis

* update workerpool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* fix tests

* mutex

* refactor flag and value names

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* debug statements

* fix bug

* update workerpool

* atomic pointer timeout

* add apis

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* merge base branch

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* mutex

* fix tests

* Merge branch 'arpit/add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* Change default size of execution pool to 40

* refactor flag and value names

* fix merge conflicts

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* fix linters

* fix go.mod

* change sec to ms

* change default value for ep timeout

* fix node api calls

* comment setter for ep timeout

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* version change (ethereum#721)

* Event based pprof (ethereum#732)

* feature

* Save pprof to /tmp

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>

* Cherry-pick changes from develop (ethereum#738)

* Check if block is nil to prevent panic (ethereum#736)

* miner: use env for tracing instead of block object (ethereum#728)

---------

Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* add max code init size check in txpool (ethereum#739)

* Revert "Event based pprof" and update version (ethereum#742)

* Revert "Event based pprof (ethereum#732)"

This reverts commit 22fa403.

* params: update version to 0.3.4-beta3

* packaging/templates: update bor version

* internal/ethapi :: Fix : newRPCTransactionFromBlockIndex

* fix: remove assignment for bor receipt

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* Setting up bor to use hosted 18.04 runner as ubuntu provided 18.04 runner is end of life

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>
Co-authored-by: Martin Holst Swende <martin@swende.se>
Co-authored-by: marcello33 <marcelloardizzone@hotmail.it>
Co-authored-by: Raneet Debnath <raneetdebnath10@gmail.com>
Co-authored-by: Raneet Debnath <35629432+Raneet10@users.noreply.github.com>
Co-authored-by: Alex <dalexwatts@gmail.com>
Co-authored-by: Daniel Jones <djones@polygon.technology>

* core: remove duplicate tests

* miner: use get validators by hash in tests

---------

Co-authored-by: Daniel Jones <djones@polygon.technology>
Co-authored-by: Will Button <wbutton@polygon.technology>
Co-authored-by: Will Button <will@willbutton.com>
Co-authored-by: Daniel Jones <105369507+djpolygon@users.noreply.github.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>
Co-authored-by: Martin Holst Swende <martin@swende.se>
Co-authored-by: marcello33 <marcelloardizzone@hotmail.it>
Co-authored-by: Raneet Debnath <raneetdebnath10@gmail.com>
Co-authored-by: Raneet Debnath <35629432+Raneet10@users.noreply.github.com>
Co-authored-by: Alex <dalexwatts@gmail.com>

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Raneet Debnath <raneetdebnath10@gmail.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: builder90210 <anonbuilder90210@gmail.com>
Co-authored-by: Krishna Upadhyaya <KRISHNAU1604@GMAIL.COM>
Co-authored-by: Daniel Jones <djones@polygon.technology>
Co-authored-by: Will Button <wbutton@polygon.technology>
Co-authored-by: Will Button <will@willbutton.com>
Co-authored-by: Daniel Jones <105369507+djpolygon@users.noreply.github.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Raneet Debnath <35629432+Raneet10@users.noreply.github.com>
Co-authored-by: Didi <github@d10r.net>
Co-authored-by: ephess <e+github@ephess.nz>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Martin Holst Swende <martin@swende.se>
Co-authored-by: Alex <dalexwatts@gmail.com>
maoueh pushed a commit to streamingfast/go-ethereum that referenced this issue Jun 9, 2023
* Adding in Mumbai/Mainnet precursor deb packaging for tests to use during upgrade(iterations to come)

* Added changes per discussion in PR, more changes may be necessary

* Adding prerelease true

* Disabling goreleaser

* Removing README swap file

* change bor_dir and add bor user for v0.3.0 release

* rollback bor user and use root

* metrics: handle equal to separated config flag (#596)

* metrics: handle  based config path

* internal/cli/server: add more context to logs

* use space separated flag and value in bor.service

* fixed static-nodes related buf (os independent) (#598)

* fixed static-nodes related buf (os independent)

* taking static-nodes as input if default not present

* Update default flags (#600)

* internal/cli/server: use geth's default for txpool.pricelimit and add comments

* builder/files: update config.toml for mainnet

* packaging/templates: update defaults for mainnet and mumbai

* internal/cli/server: skip overriding cache

* packaging/templates: update cache value for mainnet

* packaging/templates: update gcmode for archive mumbai node

* metrics: handle nil telemetry config (#601)

* resolve merge conflicts

* update go version in release.yml

* update goversion in makefile

* update Docker login for goreleaser-cross v1.19

* Cleanup for the packager to use git tag in the package profile naming. Added conditional check for directory structure, this is in prep for v0.3.1, as this will create a failure on upgrade path in package due to file exist

* added a toml configuration file with comments describing each flag (#607)

* added a toml configuration file with comments describing each flag

* internal/cli/server: update flag description

* docs/cli: update example config and description of flags

* docs: update new-cli docs

Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* Adding of 0.3.0 package changes, control file updates, postinst changes, and packager update

* added ancient datadir flag and toml field, need to decide on default value and update the conversion script

* updated toml files with ancient field

* Add support for new flags in new config.toml, which were present in old config.toml (#612)

* added HTTPTimeouts, and TrieTimeout flag in new tol, from old toml

* added RAW fields for these time.Duration flags

* updated the conversion script to support these extra 4 flags

* removed hcl and json config tests as we are only supporting toml config files

* updated toml files with cache.timeout field

* updated toml files with jsonrpc.timeouts field

* tests/bor: expect a call for latest checkpoint

* tests/bor: expect a call for latest checkpoint

* packaging/templates: update cache values for archive nodes

Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* remove unwanted code

* Fix docker publish authentication issue

In gorelease-cross 1.19+, dockerhub authentication will require docker
logion action followed by mounting docker config file. See
https://github.com/goreleaser/goreleaser-cross#github-actions.

* Revert "update Docker login for goreleaser-cross v1.19"

This reverts commit 4d19cf5342a439d98cca21b03c63a0bc075769cf.

* Bump version to stable

* Revert "Merge pull request #435 from maticnetwork/POS-553"

This reverts commit 657d262defc9c94e9513b3d45230492d8b20eac7, reversing
changes made to 88dbfa1c13c15464d3c1a3085a9f12d0ffb9b218.

* revert change for release for go1.19

* Add default values to CLI helper and docs

This commit adds default values to CLI helper and docs. When the default value of a string flag, slice string flag, or map string flag is empty, its helper message won't show any default value.

* Add a summary of new CLI in docs

* Updating packager as binutils changed version so that apt-get installs current versions

* Add state pruning to new CLI

* Minor wording fix in prune state description

* Bumping control file versions

* Mainnet Delhi fork

* Set version to stable

* change delhi hardfork block number

* handle future chain import and skip peer drop (#650)

* handle future chain import and skip peer drop

* add block import metric

* params: bump version to v0.3.3-stable

* Bump bor version in control files for v0.3.3 mainnet release

* Added checks to RPC requests and introduced new flags to customise the parameters (#657)

* added a check to reject rpc requests with batch size > the one set using a newly added flag (rpcbatchlimit)

* added a check to reject rpc requests whose result size > the one set using a newly added flag (rpcreturndatalimit)

* updated the config files and docs

* chg : trieTimeout from 60 to 10 mins (#692)

* chg : trieTimeout from 60 to 10 mins

* chg : cache.timout to 10m from 1h in configs

* internal/cli/server : fix : added triesInMemory in config (#691)

* changed version from 0.3.0 to 0.3.4-beta (#693)

* fix nil state-sync issue, increase grpc limit (#695)

* Increase grpc message size limit in pprof

* consensus/bor/bor.go : stateSyncs init fixed [Fix #686]

* eth/filters: handle nil state-sync before notify

* eth/filters: update check

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>

* core, tests/bor: add more tests for state-sync validation (#710)

* core: add get state sync function for tests

* tests/bor: add validation for state sync events post consensus

* Arpit/temp bor sync (#701)

* Increase grpc message size limit in pprof

* ReadBorReceipts improvements

* use internal function

* fix tests

* fetch geth upstread for ReadBorReceiptRLP

* Only query bor receipt when the query index is equal to # tx in block body

This change reduces the frequency of calling ReadBorReceipt and
ReadBorTransaction, which are CPU and db intensive.

* Revert "fetch geth upstread for ReadBorReceiptRLP"

This reverts commit 2e838a6b1313d26674f3a8df4b044e35dcbf35a0.

* Restore ReadBorReceiptRLP

* fix bor receipts

* remove unused

* fix lints

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Revert "chg : trieTimeout from 60 to 10 mins (#692)" (#720)

This reverts commit 241843c7e7bb18e64d2e157fd6fbbd665f6ce9d9.

* Arpit/add execution pool 2 (#719)

* initial

* linters

* linters

* remove timeout

* update pool

* change pool size function

* check nil

* check nil

* fix tests

* Use execution pool from server in all handlers

* simplify things

* test fix

* add support for cli, config

* add to cli and config

* merge base branch

* debug statements

* fix bug

* atomic pointer timeout

* add apis

* update workerpool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* fix tests

* mutex

* refactor flag and value names

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* debug statements

* fix bug

* update workerpool

* atomic pointer timeout

* add apis

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* merge base branch

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* mutex

* fix tests

* Merge branch 'arpit/add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* Change default size of execution pool to 40

* refactor flag and value names

* fix merge conflicts

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* fix linters

* fix go.mod

* change sec to ms

* change default value for ep timeout

* fix node api calls

* comment setter for ep timeout

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* version change (#721)

* Event based pprof (#732)

* feature

* Save pprof to /tmp

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>

* Cherry-pick changes from develop (#738)

* Check if block is nil to prevent panic (#736)

* miner: use env for tracing instead of block object (#728)

---------

Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* add max code init size check in txpool (#739)

* Revert "Event based pprof" and update version (#742)

* Revert "Event based pprof (#732)"

This reverts commit 22fa4033e8fabb51c44e8d2a8c6bb695a6e9285e.

* params: update version to 0.3.4-beta3

* packaging/templates: update bor version

* internal/ethapi :: Fix : newRPCTransactionFromBlockIndex

* Merge master to qa (#813)

* Merge qa to master (#750)

* Added checks to RPC requests and introduced new flags to customise the parameters (#657)

* added a check to reject rpc requests with batch size > the one set using a newly added flag (rpcbatchlimit)

* added a check to reject rpc requests whose result size > the one set using a newly added flag (rpcreturndatalimit)

* updated the config files and docs

* chg : trieTimeout from 60 to 10 mins (#692)

* chg : trieTimeout from 60 to 10 mins

* chg : cache.timout to 10m from 1h in configs

* internal/cli/server : fix : added triesInMemory in config (#691)

* changed version from 0.3.0 to 0.3.4-beta (#693)

* fix nil state-sync issue, increase grpc limit (#695)

* Increase grpc message size limit in pprof

* consensus/bor/bor.go : stateSyncs init fixed [Fix #686]

* eth/filters: handle nil state-sync before notify

* eth/filters: update check

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>

* core, tests/bor: add more tests for state-sync validation (#710)

* core: add get state sync function for tests

* tests/bor: add validation for state sync events post consensus

* Arpit/temp bor sync (#701)

* Increase grpc message size limit in pprof

* ReadBorReceipts improvements

* use internal function

* fix tests

* fetch geth upstread for ReadBorReceiptRLP

* Only query bor receipt when the query index is equal to # tx in block body

This change reduces the frequency of calling ReadBorReceipt and
ReadBorTransaction, which are CPU and db intensive.

* Revert "fetch geth upstread for ReadBorReceiptRLP"

This reverts commit 2e838a6b1313d26674f3a8df4b044e35dcbf35a0.

* Restore ReadBorReceiptRLP

* fix bor receipts

* remove unused

* fix lints

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Revert "chg : trieTimeout from 60 to 10 mins (#692)" (#720)

This reverts commit 241843c7e7bb18e64d2e157fd6fbbd665f6ce9d9.

* Arpit/add execution pool 2 (#719)

* initial

* linters

* linters

* remove timeout

* update pool

* change pool size function

* check nil

* check nil

* fix tests

* Use execution pool from server in all handlers

* simplify things

* test fix

* add support for cli, config

* add to cli and config

* merge base branch

* debug statements

* fix bug

* atomic pointer timeout

* add apis

* update workerpool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* fix tests

* mutex

* refactor flag and value names

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* debug statements

* fix bug

* update workerpool

* atomic pointer timeout

* add apis

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* merge base branch

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* mutex

* fix tests

* Merge branch 'arpit/add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* Change default size of execution pool to 40

* refactor flag and value names

* fix merge conflicts

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* fix linters

* fix go.mod

* change sec to ms

* change default value for ep timeout

* fix node api calls

* comment setter for ep timeout

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* version change (#721)

* Event based pprof (#732)

* feature

* Save pprof to /tmp

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>

* Cherry-pick changes from develop (#738)

* Check if block is nil to prevent panic (#736)

* miner: use env for tracing instead of block object (#728)

---------

Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* add max code init size check in txpool (#739)

* Revert "Event based pprof" and update version (#742)

* Revert "Event based pprof (#732)"

This reverts commit 22fa4033e8fabb51c44e8d2a8c6bb695a6e9285e.

* params: update version to 0.3.4-beta3

* packaging/templates: update bor version

* params, packaging/templates: update bor version

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* core, miner: add sub-spans for tracing (#753)

* core, miner: add sub-spans for tracing

* fix linters

* core: add logs for debugging

* core: add more logs to print tdd while reorg

* fix linters

* core: minor fix

* core: remove debug logs

* core: use different span for write block and set head

* core: use internal context for sending traces (#755)

* core: add : impossible reorg block dump (#754)

* add : impossible reorg block dump

* chg : 3 seperate files for impossoble reorg dump

* add : use exportBlocks method and RLP blocks before writing

* chg : small changes

* bump : go version from 1.19 to 1.20.1 (#761)

* Revert "bump : go version from 1.19 to 1.20.1 (#761)"

This reverts commit 4561012af9a31d20c2715ce26e4b39ca93420b8b.

* core/vm: use optimized bigint (#26021)

* Add holiman/big

* Fix linter

* Bump version to v0.3.5

* fix lints from develop (few lints decided to appear from code that was untouched, weird)

* upgrade crypto lib version (#770)

* bump dep : github.com/Masterminds/goutils to v1.1.1 (#769)

* mardizzone/pos-1313: bump crypto dependency (#772)

* dev: chg: bumd net dependency

* dev: chg: bump crypto dependency

* dev: chg: bump crypto dependency

* bump dep : golang.org/x/net to v0.8.0 (#771)

* Verify validator set against local contract on receiving an end-of-sprint block (#768)

* Verify validator set against local contract on receiving an end-of-sprint block

* Fix tests

* Respect error returned by ParseValidators

* Keep going back until a parent block presents

* core/txpool: implement DoS defenses from geth (#778)

* Hotfixes and deps bump (#776)

* dev: chg: bump deps

* internal/cli/server, rpc: lower down http readtimeout to 10s

* dev: chg: get p2p adapter

* dev: chg: lower down jsonrpc readtimeout to 10s

* cherry-pick txpool optimisation changes

* add check for empty lists in txpool (#704)

* add check

* linters

* core, miner: add empty instrumentation name for tracing

---------

Co-authored-by: Raneet Debnath <raneetdebnath10@gmail.com>
Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Evgeny Danilenko <6655321@bk.ru>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* packaging,params: bump to v0.3.6 (#782)

* v0.3.6 fix (#787)

* Fix get validator set in header verifier

* chg : commit tx logs from info to debug (#673)

* chg : commit tx logs from info to debug

* fix : minor changes

* chg : miner : commitTransactions-stats moved from info to debug

* lint : fix linters

* refactor logging

* miner : chg : UnauthorizedSignerError to debug

* lint : fix lint

* fix : log.Logger interface compatibility

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Remove unnecessary sorting of valset from header in verification

* dev: chg: version bump

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: marcello33 <marcelloardizzone@hotmail.it>

* core: improve locks in txpool (#807)

* added a write lock to the txs.filter method and a read lock to the txs.reheap method - both of which are called by Filter during reorg adjustments to txpool

* txpool reorg locks

* more locks

* locks

* linters

* params, packaging: update version for v0.3.8-beta release

* core: add logs in reheap

---------

Co-authored-by: Alex <dalexwatts@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Merge qa to master (#808)

* Added checks to RPC requests and introduced new flags to customise the parameters (#657)

* added a check to reject rpc requests with batch size > the one set using a newly added flag (rpcbatchlimit)

* added a check to reject rpc requests whose result size > the one set using a newly added flag (rpcreturndatalimit)

* updated the config files and docs

* chg : trieTimeout from 60 to 10 mins (#692)

* chg : trieTimeout from 60 to 10 mins

* chg : cache.timout to 10m from 1h in configs

* internal/cli/server : fix : added triesInMemory in config (#691)

* changed version from 0.3.0 to 0.3.4-beta (#693)

* fix nil state-sync issue, increase grpc limit (#695)

* Increase grpc message size limit in pprof

* consensus/bor/bor.go : stateSyncs init fixed [Fix #686]

* eth/filters: handle nil state-sync before notify

* eth/filters: update check

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>

* core, tests/bor: add more tests for state-sync validation (#710)

* core: add get state sync function for tests

* tests/bor: add validation for state sync events post consensus

* Arpit/temp bor sync (#701)

* Increase grpc message size limit in pprof

* ReadBorReceipts improvements

* use internal function

* fix tests

* fetch geth upstread for ReadBorReceiptRLP

* Only query bor receipt when the query index is equal to # tx in block body

This change reduces the frequency of calling ReadBorReceipt and
ReadBorTransaction, which are CPU and db intensive.

* Revert "fetch geth upstread for ReadBorReceiptRLP"

This reverts commit 2e838a6b1313d26674f3a8df4b044e35dcbf35a0.

* Restore ReadBorReceiptRLP

* fix bor receipts

* remove unused

* fix lints

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Revert "chg : trieTimeout from 60 to 10 mins (#692)" (#720)

This reverts commit 241843c7e7bb18e64d2e157fd6fbbd665f6ce9d9.

* Arpit/add execution pool 2 (#719)

* initial

* linters

* linters

* remove timeout

* update pool

* change pool size function

* check nil

* check nil

* fix tests

* Use execution pool from server in all handlers

* simplify things

* test fix

* add support for cli, config

* add to cli and config

* merge base branch

* debug statements

* fix bug

* atomic pointer timeout

* add apis

* update workerpool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* fix tests

* mutex

* refactor flag and value names

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* debug statements

* fix bug

* update workerpool

* atomic pointer timeout

* add apis

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* merge base branch

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* mutex

* fix tests

* Merge branch 'arpit/add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* Change default size of execution pool to 40

* refactor flag and value names

* fix merge conflicts

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* fix linters

* fix go.mod

* change sec to ms

* change default value for ep timeout

* fix node api calls

* comment setter for ep timeout

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* version change (#721)

* Event based pprof (#732)

* feature

* Save pprof to /tmp

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>

* Cherry-pick changes from develop (#738)

* Check if block is nil to prevent panic (#736)

* miner: use env for tracing instead of block object (#728)

---------

Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* add max code init size check in txpool (#739)

* Revert "Event based pprof" and update version (#742)

* Revert "Event based pprof (#732)"

This reverts commit 22fa4033e8fabb51c44e8d2a8c6bb695a6e9285e.

* params: update version to 0.3.4-beta3

* packaging/templates: update bor version

* internal/ethapi :: Fix : newRPCTransactionFromBlockIndex

* fix: remove assignment for bor receipt

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* Setting up bor to use hosted 18.04 runner as ubuntu provided 18.04 runner is end of life

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>
Co-authored-by: Martin Holst Swende <martin@swende.se>
Co-authored-by: marcello33 <marcelloardizzone@hotmail.it>
Co-authored-by: Raneet Debnath <raneetdebnath10@gmail.com>
Co-authored-by: Raneet Debnath <35629432+Raneet10@users.noreply.github.com>
Co-authored-by: Alex <dalexwatts@gmail.com>
Co-authored-by: Daniel Jones <djones@polygon.technology>

* merge v0.3.9-alpha to qa (#824)

* commit logs

* CI: test launch devnet without hardcoded sleep time (pos-534)

* CI: try using checked out bor path

* CI: fix missing ;

* CI: fix assignment operator

* CI: echo peers and block no.

* CI: cleanup

* minor chg: add new line

* dev: add: pos-944: snyk and govuln integration (#578)

* dev: add: pos-944 security ci and readme

* dev: add: pos-944 remove linters as this is included already in build ci

* dev: chg: pos-947 dependencies upgrade to solve snyk security issues

* dev: chg: update security-ci

* dev: chg: remove linter to allow replacements for security issues

* dev: add: pos-944 verify path when updating metrics from config

* dev: add: pos-944 fix linter

* dev: add: pos-944 add .snyk policy file / fix snyk code vulnerabilities

* dev: fix: pos-944 import common package / gitignore snyk dccache file

* dev: fix: pos-944 verify canonical path for crashers

* dev: fix: pos-944 linter

* dev: add: pos-976 add govuln check

* dev: add: pos-976 test upload with permissions

* dev: add: pos-976 remove duplicated upload

* dev: add: pos-976 report upload

* dev: add: pos-976 remove upload

* dev: fix: pos-944 fix govuln action

* dev: fix: pos-944 move govulncheck to security-ci

* dev: fix: pos-944 bump golvun action and golang versions

* dev: fix: pos-944 remove persmissions and fix conflicts

* dev: chg: restore err msg

* dev: chg: remove duplicated function

* dev: chg: sort import

* dev: chg: fix linter

* dev: add: use common VerifyCrasher function to avoid duplications / replace deprecated ioutils.ReadFile

* dev: fix: typo

* fix linters

* upgrade grpc version

* add ignore rule for net/http2

* Shivam/txpool tracing (#604)

* lock, unlock to rlock, runlock

* add : tracing Pending() and Locals()

* Log time spent in committing a tx during mining

* Remove data from logging

* Move log into case where a tx completes without error

* profile fillTransactions

* fix conflict

* bug fixes

* add logs

* txpool: add tracing in Pending()

* rearrange tracing

* add attributes

* fix

* fix

* log error in profiling

* update file mode and file path for profiling

* full profiling

* fix log

* fix log

* less wait

* fix

* fix

* logs

* worker: use block number for prof files

* initial

* txList add

* fix gas calculation

* fix

* green tests

* linters

* prettify

* allocate less

* no locks between pending and reorg

* no locks

* no locks on locals

* more tests

* linters

* less allocs

* comment

* optimize errors

* linters

* fix

* fix

* Linters

* linters

* linters

* simplify errors

* atomics for transactions

* fix

* optimize workers

* fix copy

* linters

* txpool tracing

* linters

* fix tracing

* duration in mcs

* locks

* metrics

* fix

* cache hit/miss

* less locks on evict

* remove once

* remove once

* switch off pprof

* fix data race

* fix data race

* add : sealed total/empty blocks metric gauge

* add : RPC debug_getTraceStack

* fix : RPC debug_getTraceStack

* fix : RPC debug_getTraceStack for all go-routines

* linters

* add data race test on txpool

* fix concurrency

* noleak

* increase batch size

* prettify

* tests

* baseFee mutex

* panic fix

* linters

* fix gas fee data race

* linters

* more transactions

* debug

* debug

* fix ticker

* fix test

* add cacheMu

* more tests

* fix test panic

* linters

* add statistics

* add statistics

* txitems data race

* fix tx list Has

* fix : lint

Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Reduce txArriveTimeout to 100ms

* init : remove exit on keystore err

* add : multiple keystore tolerance

* lint : fix linters

* chg : use standard logging

* chg : logging strings

* Added flags to run heimdall as a child process (#597)

* Added flags to run heimdall as a child process

* Fix: Lint

* Fix btcd package dependency for CI

* Update btcd package version

* Try removing ambigious importts

* dev: fix: lint fix for parallel tests

* remove delete for ambigious import

* Remove unwanted space

* go mod tidy

* try replace

* try replace

* use vendor

* rename vendor

* tidy

* vendor btcec

* clean up

* remove submodule

* remove submodule

* remove submodule

* remove submodule

* remove vendor & added replacer in test

* go mod tidy

* added replacer

* Update replacer

* Update replacer

* Merge branch 'develop' into run-heimdall-flags

* Skip TestGolangBindings

* Typo fix

* Remove unwanted changes

Co-authored-by: marcello33 <marcelloardizzone@hotmail.it>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* dev: chg: update PR template to include nodes audience check (#641)

* dev: chg: update PR template to include nodes audience check

* dev: chg: better description

* dev: chg: add entry to changes too

* sonarqube integration (#658)

* dev: add: sonarqube integration into security-ci

* dev: add: exclude java files from sonarqube analysis

* Merge branch 'qa' and 'master' into develop (#663)

* Adding in Mumbai/Mainnet precursor deb packaging for tests to use during upgrade(iterations to come)

* Added changes per discussion in PR, more changes may be necessary

* Adding prerelease true

* Disabling goreleaser

* Removing README swap file

* change bor_dir and add bor user for v0.3.0 release

* rollback bor user and use root

* metrics: handle equal to separated config flag (#596)

* metrics: handle  based config path

* internal/cli/server: add more context to logs

* use space separated flag and value in bor.service

* fixed static-nodes related buf (os independent) (#598)

* fixed static-nodes related buf (os independent)

* taking static-nodes as input if default not present

* Update default flags (#600)

* internal/cli/server: use geth's default for txpool.pricelimit and add comments

* builder/files: update config.toml for mainnet

* packaging/templates: update defaults for mainnet and mumbai

* internal/cli/server: skip overriding cache

* packaging/templates: update cache value for mainnet

* packaging/templates: update gcmode for archive mumbai node

* metrics: handle nil telemetry config (#601)

* resolve merge conflicts

* update go version in release.yml

* update goversion in makefile

* update Docker login for goreleaser-cross v1.19

* Cleanup for the packager to use git tag in the package profile naming. Added conditional check for directory structure, this is in prep for v0.3.1, as this will create a failure on upgrade path in package due to file exist

* added a toml configuration file with comments describing each flag (#607)

* added a toml configuration file with comments describing each flag

* internal/cli/server: update flag description

* docs/cli: update example config and description of flags

* docs: update new-cli docs

Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* Adding of 0.3.0 package changes, control file updates, postinst changes, and packager update

* added ancient datadir flag and toml field, need to decide on default value and update the conversion script

* updated toml files with ancient field

* Add support for new flags in new config.toml, which were present in old config.toml (#612)

* added HTTPTimeouts, and TrieTimeout flag in new tol, from old toml

* added RAW fields for these time.Duration flags

* updated the conversion script to support these extra 4 flags

* removed hcl and json config tests as we are only supporting toml config files

* updated toml files with cache.timeout field

* updated toml files with jsonrpc.timeouts field

* tests/bor: expect a call for latest checkpoint

* tests/bor: expect a call for latest checkpoint

* packaging/templates: update cache values for archive nodes

Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* remove unwanted code

* Fix docker publish authentication issue

In gorelease-cross 1.19+, dockerhub authentication will require docker
logion action followed by mounting docker config file. See
https://github.com/goreleaser/goreleaser-cross#github-actions.

* Revert "update Docker login for goreleaser-cross v1.19"

This reverts commit 4d19cf5342a439d98cca21b03c63a0bc075769cf.

* Bump version to stable

* Revert "Merge pull request #435 from maticnetwork/POS-553"

This reverts commit 657d262defc9c94e9513b3d45230492d8b20eac7, reversing
changes made to 88dbfa1c13c15464d3c1a3085a9f12d0ffb9b218.

* revert change for release for go1.19

* Add default values to CLI helper and docs

This commit adds default values to CLI helper and docs. When the default value of a string flag, slice string flag, or map string flag is empty, its helper message won't show any default value.

* Add a summary of new CLI in docs

* Updating packager as binutils changed version so that apt-get installs current versions

* Add state pruning to new CLI

* Minor wording fix in prune state description

* Bumping control file versions

* Mainnet Delhi fork

* Set version to stable

* change delhi hardfork block number

* handle future chain import and skip peer drop (#650)

* handle future chain import and skip peer drop

* add block import metric

* params: bump version to v0.3.3-stable

* Bump bor version in control files for v0.3.3 mainnet release

Co-authored-by: Daniel Jones <djones@polygon.technology>
Co-authored-by: Will Button <wbutton@polygon.technology>
Co-authored-by: Will Button <will@willbutton.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Daniel Jones <105369507+djpolygon@users.noreply.github.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>

* CI: use matic-cli master branch

* trigger ci

* internal/cli/server : fix : added triesInMemory in config (#677)

* update requirements in README (#681)

* consensus/bor : add : devFakeAuthor flag

* core,eth,internal/cli,internal/ethapi: add --rpc.allow-unprotected-txs flag to allow txs to get replayed (for shadow node)

* internal/cli: add `skiptrace` flag for profiling (#715)

* internal/cli: add skiptrace flag

* docs: update docs for skiptrace flag

* Added flag in Status to wait for backend, and fixed panic issue. (#708)

* checking if backend is available during status call, and added a flag to wait if backend is not available

* added test for status command (does not cover the whole code)

* Revert "Reduce txArriveTimeout to 100ms" (#707)

This reverts commit 243d231fe45bc02f33678bb4f69e941167d7f466.

* consensus/bor : add : devFakeAuthor flag (#697)

* add check for empty lists in txpool (#704)

* add check

* linters

* dev: chg: POS-215 move sonarqube to own ci (#733)

* Added verbosity flag, supports log-level as well, but will remove that in future. (#722)

* changed log-level flag back to verbosity, and updated the conversion script

* supporting both verbosity and log-level, with a message to deprecat log-level

* converted verbosity to a int value

* Check if block is nil to prevent panic (#736)

* miner: use env for tracing instead of block object (#728)

* Add : mutex pprof profile (#731)

* add : mutex pprof profile

* rm : remove trace from default pprof profiles

* chg : commit tx logs from info to debug (#673)

* chg : commit tx logs from info to debug

* fix : minor changes

* chg : miner : commitTransactions-stats moved from info to debug

* lint : fix linters

* refactor logging

* miner : chg : UnauthorizedSignerError to debug

* lint : fix lint

* fix : log.Logger interface compatibility

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Add : commit details to bor version (#730)

* add : commit details to bor version

* fix : MAKEFILE

* undo : rm test-txpool-race

* rm : params/build_date

* rm : params/gitbranch and params/gitdate

* core,docs/cli,internal/cli/server: make docs

* builder,docs/cli,packaging: update toml files

* mardizzone/hotfix-snyk: remove vcs build when running snyk (#745)

* Feat : SetMaxPeers (#726)

* init : add admin.setMaxPeers and getMaxPeers

* lint : fix lint

* add : some comments

* Update wiki link (#762)

* Heimdall App implementation (#646)

* added support for miner.recommit flag (#743)

* interrupting commit experiment (#556)

* initial

* delete

* linters

* big benchmark

* benchmark big ints

* delay

* fix generate

* remove debug

* miner : chg : remove noempty check

* fix lints

* consensus/bor: handle unauthorized signer in consensus.Prepare (#651)

* fix : break loop fix

* lint : fix

* lint : more lint fix

* fix : skip TestEmptyWorkEthash and TestEmptyWorkClique

* add : metrics commitInterruptCounter

---------

Co-authored-by: Shivam Sharma <shivam691999@gmail.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* internal/cli: added missing flags (#744)

* minor comment update

* added support for rpc.evmtimeout flag

* added support for vmdebug (EnablePreimageRecording) flag

* added support for jsonrpc.auth.(jwtsecret, addr, port, vhosts) flags

* added support for miner.recommit flag

* added support for gpo.maxheaderhistory and gpo.maxblockhistory flag

* Revert "added support for miner.recommit flag"

This reverts commit fcb722e4bf5bdda23d4c91da40ab95c9023a80c3.

* added pprof related flags (expect --pprof.cpuprofile - Write CPU profile to the given file)

* added support for --dev.gaslimit flag

* added support for --fdlimit flag

* added support for --netrestrict flag

* added support for --nodekey and --nodekeyhex flag

* added support for --vmodule, --log.json, --log.backtrace, and --log.debug flags

* fixed related lint errors

* fix lints from develop (few lints decided to appear from code that was untouched, weird)

* more weird lints from develop

* small precautionary fix

* small bug ;) fix in NetRestrict

* weird lints

* change vmdebug = true to vmdebug = false

* internal/ethapi: set rpc gas cap as default gas limit when creating access list

* add : testcase for CommitInterruptExperiment (#792)

* add : TestCommitInterruptExperimentBor

* lint : fix lint

* chg : add waitgroup

* dev: chg: continue on error when uploading snyk results to GH (#795)

* consensus/bor: revert handle unauthorized signer in consensus.Prepare

* Revert "consensus/bor: handle unauthorized signer in consensus.Prepare (#651)"

This reverts commit 9ce8c7de75a1b5021bb6f2b8086e813c8244b22c.

* eth/downloader/whitelist: skip future chain validation (#796)

* eth/downloader/whitelist: skip future chain validation

* eth/downloader/whitelist: fix tests for future chain import

* Setting up bor to use hosted 18.04 runner as ubuntu provided 18.04 runner is end of life

* Merge qa to develop (#814)

* Adding in Mumbai/Mainnet precursor deb packaging for tests to use during upgrade(iterations to come)

* Added changes per discussion in PR, more changes may be necessary

* Adding prerelease true

* Disabling goreleaser

* Removing README swap file

* change bor_dir and add bor user for v0.3.0 release

* rollback bor user and use root

* metrics: handle equal to separated config flag (#596)

* metrics: handle  based config path

* internal/cli/server: add more context to logs

* use space separated flag and value in bor.service

* fixed static-nodes related buf (os independent) (#598)

* fixed static-nodes related buf (os independent)

* taking static-nodes as input if default not present

* Update default flags (#600)

* internal/cli/server: use geth's default for txpool.pricelimit and add comments

* builder/files: update config.toml for mainnet

* packaging/templates: update defaults for mainnet and mumbai

* internal/cli/server: skip overriding cache

* packaging/templates: update cache value for mainnet

* packaging/templates: update gcmode for archive mumbai node

* metrics: handle nil telemetry config (#601)

* resolve merge conflicts

* update go version in release.yml

* update goversion in makefile

* update Docker login for goreleaser-cross v1.19

* Cleanup for the packager to use git tag in the package profile naming. Added conditional check for directory structure, this is in prep for v0.3.1, as this will create a failure on upgrade path in package due to file exist

* added a toml configuration file with comments describing each flag (#607)

* added a toml configuration file with comments describing each flag

* internal/cli/server: update flag description

* docs/cli: update example config and description of flags

* docs: update new-cli docs

Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* Adding of 0.3.0 package changes, control file updates, postinst changes, and packager update

* added ancient datadir flag and toml field, need to decide on default value and update the conversion script

* updated toml files with ancient field

* Add support for new flags in new config.toml, which were present in old config.toml (#612)

* added HTTPTimeouts, and TrieTimeout flag in new tol, from old toml

* added RAW fields for these time.Duration flags

* updated the conversion script to support these extra 4 flags

* removed hcl and json config tests as we are only supporting toml config files

* updated toml files with cache.timeout field

* updated toml files with jsonrpc.timeouts field

* tests/bor: expect a call for latest checkpoint

* tests/bor: expect a call for latest checkpoint

* packaging/templates: update cache values for archive nodes

Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* remove unwanted code

* Fix docker publish authentication issue

In gorelease-cross 1.19+, dockerhub authentication will require docker
logion action followed by mounting docker config file. See
https://github.com/goreleaser/goreleaser-cross#github-actions.

* Revert "update Docker login for goreleaser-cross v1.19"

This reverts commit 4d19cf5342a439d98cca21b03c63a0bc075769cf.

* Bump version to stable

* Revert "Merge pull request #435 from maticnetwork/POS-553"

This reverts commit 657d262defc9c94e9513b3d45230492d8b20eac7, reversing
changes made to 88dbfa1c13c15464d3c1a3085a9f12d0ffb9b218.

* revert change for release for go1.19

* Add default values to CLI helper and docs

This commit adds default values to CLI helper and docs. When the default value of a string flag, slice string flag, or map string flag is empty, its helper message won't show any default value.

* Add a summary of new CLI in docs

* Updating packager as binutils changed version so that apt-get installs current versions

* Add state pruning to new CLI

* Minor wording fix in prune state description

* Bumping control file versions

* Mainnet Delhi fork

* Set version to stable

* change delhi hardfork block number

* handle future chain import and skip peer drop (#650)

* handle future chain import and skip peer drop

* add block import metric

* params: bump version to v0.3.3-stable

* Bump bor version in control files for v0.3.3 mainnet release

* Added checks to RPC requests and introduced new flags to customise the parameters (#657)

* added a check to reject rpc requests with batch size > the one set using a newly added flag (rpcbatchlimit)

* added a check to reject rpc requests whose result size > the one set using a newly added flag (rpcreturndatalimit)

* updated the config files and docs

* chg : trieTimeout from 60 to 10 mins (#692)

* chg : trieTimeout from 60 to 10 mins

* chg : cache.timout to 10m from 1h in configs

* internal/cli/server : fix : added triesInMemory in config (#691)

* changed version from 0.3.0 to 0.3.4-beta (#693)

* fix nil state-sync issue, increase grpc limit (#695)

* Increase grpc message size limit in pprof

* consensus/bor/bor.go : stateSyncs init fixed [Fix #686]

* eth/filters: handle nil state-sync before notify

* eth/filters: update check

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>

* core, tests/bor: add more tests for state-sync validation (#710)

* core: add get state sync function for tests

* tests/bor: add validation for state sync events post consensus

* Arpit/temp bor sync (#701)

* Increase grpc message size limit in pprof

* ReadBorReceipts improvements

* use internal function

* fix tests

* fetch geth upstread for ReadBorReceiptRLP

* Only query bor receipt when the query index is equal to # tx in block body

This change reduces the frequency of calling ReadBorReceipt and
ReadBorTransaction, which are CPU and db intensive.

* Revert "fetch geth upstread for ReadBorReceiptRLP"

This reverts commit 2e838a6b1313d26674f3a8df4b044e35dcbf35a0.

* Restore ReadBorReceiptRLP

* fix bor receipts

* remove unused

* fix lints

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Revert "chg : trieTimeout from 60 to 10 mins (#692)" (#720)

This reverts commit 241843c7e7bb18e64d2e157fd6fbbd665f6ce9d9.

* Arpit/add execution pool 2 (#719)

* initial

* linters

* linters

* remove timeout

* update pool

* change pool size function

* check nil

* check nil

* fix tests

* Use execution pool from server in all handlers

* simplify things

* test fix

* add support for cli, config

* add to cli and config

* merge base branch

* debug statements

* fix bug

* atomic pointer timeout

* add apis

* update workerpool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* fix tests

* mutex

* refactor flag and value names

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* debug statements

* fix bug

* update workerpool

* atomic pointer timeout

* add apis

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* merge base branch

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* mutex

* fix tests

* Merge branch 'arpit/add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* Change default size of execution pool to 40

* refactor flag and value names

* fix merge conflicts

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* fix linters

* fix go.mod

* change sec to ms

* change default value for ep timeout

* fix node api calls

* comment setter for ep timeout

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* version change (#721)

* Event based pprof (#732)

* feature

* Save pprof to /tmp

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>

* Cherry-pick changes from develop (#738)

* Check if block is nil to prevent panic (#736)

* miner: use env for tracing instead of block object (#728)

---------

Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* add max code init size check in txpool (#739)

* Revert "Event based pprof" and update version (#742)

* Revert "Event based pprof (#732)"

This reverts commit 22fa4033e8fabb51c44e8d2a8c6bb695a6e9285e.

* params: update version to 0.3.4-beta3

* packaging/templates: update bor version

* internal/ethapi :: Fix : newRPCTransactionFromBlockIndex

* Merge master to qa (#813)

* Merge qa to master (#750)

* Added checks to RPC requests and introduced new flags to customise the parameters (#657)

* added a check to reject rpc requests with batch size > the one set using a newly added flag (rpcbatchlimit)

* added a check to reject rpc requests whose result size > the one set using a newly added flag (rpcreturndatalimit)

* updated the config files and docs

* chg : trieTimeout from 60 to 10 mins (#692)

* chg : trieTimeout from 60 to 10 mins

* chg : cache.timout to 10m from 1h in configs

* internal/cli/server : fix : added triesInMemory in config (#691)

* changed version from 0.3.0 to 0.3.4-beta (#693)

* fix nil state-sync issue, increase grpc limit (#695)

* Increase grpc message size limit in pprof

* consensus/bor/bor.go : stateSyncs init fixed [Fix #686]

* eth/filters: handle nil state-sync before notify

* eth/filters: update check

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>

* core, tests/bor: add more tests for state-sync validation (#710)

* core: add get state sync function for tests

* tests/bor: add validation for state sync events post consensus

* Arpit/temp bor sync (#701)

* Increase grpc message size limit in pprof

* ReadBorReceipts improvements

* use internal function

* fix tests

* fetch geth upstread for ReadBorReceiptRLP

* Only query bor receipt when the query index is equal to # tx in block body

This change reduces the frequency of calling ReadBorReceipt and
ReadBorTransaction, which are CPU and db intensive.

* Revert "fetch geth upstread for ReadBorReceiptRLP"

This reverts commit 2e838a6b1313d26674f3a8df4b044e35dcbf35a0.

* Restore ReadBorReceiptRLP

* fix bor receipts

* remove unused

* fix lints

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Revert "chg : trieTimeout from 60 to 10 mins (#692)" (#720)

This reverts commit 241843c7e7bb18e64d2e157fd6fbbd665f6ce9d9.

* Arpit/add execution pool 2 (#719)

* initial

* linters

* linters

* remove timeout

* update pool

* change pool size function

* check nil

* check nil

* fix tests

* Use execution pool from server in all handlers

* simplify things

* test fix

* add support for cli, config

* add to cli and config

* merge base branch

* debug statements

* fix bug

* atomic pointer timeout

* add apis

* update workerpool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* fix tests

* mutex

* refactor flag and value names

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* debug statements

* fix bug

* update workerpool

* atomic pointer timeout

* add apis

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* merge base branch

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* mutex

* fix tests

* Merge branch 'arpit/add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* Change default size of execution pool to 40

* refactor flag and value names

* fix merge conflicts

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* fix linters

* fix go.mod

* change sec to ms

* change default value for ep timeout

* fix node api calls

* comment setter for ep timeout

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* version change (#721)

* Event based pprof (#732)

* feature

* Save pprof to /tmp

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>

* Cherry-pick changes from develop (#738)

* Check if block is nil to prevent panic (#736)

* miner: use env for tracing instead of block object (#728)

---------

Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* add max code init size check in txpool (#739)

* Revert "Event based pprof" and update version (#742)

* Revert "Event based pprof (#732)"

This reverts commit 22fa4033e8fabb51c44e8d2a8c6bb695a6e9285e.

* params: update version to 0.3.4-beta3

* packaging/templates: update bor version

* params, packaging/templates: update bor version

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* core, miner: add sub-spans for tracing (#753)

* core, miner: add sub-spans for tracing

* fix linters

* core: add logs for debugging

* core: add more logs to print tdd while reorg

* fix linters

* core: minor fix

* core: remove debug logs

* core: use different span for write block and set head

* core: use internal context for sending traces (#755)

* core: add : impossible reorg block dump (#754)

* add : impossible reorg block dump

* chg : 3 seperate files for impossoble reorg dump

* add : use exportBlocks method and RLP blocks before writing

* chg : small changes

* bump : go version from 1.19 to 1.20.1 (#761)

* Revert "bump : go version from 1.19 to 1.20.1 (#761)"

This reverts commit 4561012af9a31d20c2715ce26e4b39ca93420b8b.

* core/vm: use optimized bigint (#26021)

* Add holiman/big

* Fix linter

* Bump version to v0.3.5

* fix lints from develop (few lints decided to appear from code that was untouched, weird)

* upgrade crypto lib version (#770)

* bump dep : github.com/Masterminds/goutils to v1.1.1 (#769)

* mardizzone/pos-1313: bump crypto dependency (#772)

* dev: chg: bumd net dependency

* dev: chg: bump crypto dependency

* dev: chg: bump crypto dependency

* bump dep : golang.org/x/net to v0.8.0 (#771)

* Verify validator set against local contract on receiving an end-of-sprint block (#768)

* Verify validator set against local contract on receiving an end-of-sprint block

* Fix tests

* Respect error returned by ParseValidators

* Keep going back until a parent block presents

* core/txpool: implement DoS defenses from geth (#778)

* Hotfixes and deps bump (#776)

* dev: chg: bump deps

* internal/cli/server, rpc: lower down http readtimeout to 10s

* dev: chg: get p2p adapter

* dev: chg: lower down jsonrpc readtimeout to 10s

* cherry-pick txpool optimisation changes

* add check for empty lists in txpool (#704)

* add check

* linters

* core, miner: add empty instrumentation name for tracing

---------

Co-authored-by: Raneet Debnath <raneetdebnath10@gmail.com>
Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Evgeny Danilenko <6655321@bk.ru>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* packaging,params: bump to v0.3.6 (#782)

* v0.3.6 fix (#787)

* Fix get validator set in header verifier

* chg : commit tx logs from info to debug (#673)

* chg : commit tx logs from info to debug

* fix : minor changes

* chg : miner : commitTransactions-stats moved from info to debug

* lint : fix linters

* refactor logging

* miner : chg : UnauthorizedSignerError to debug

* lint : fix lint

* fix : log.Logger interface compatibility

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Remove unnecessary sorting of valset from header in verification

* dev: chg: version bump

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: marcello33 <marcelloardizzone@hotmail.it>

* core: improve locks in txpool (#807)

* added a write lock to the txs.filter method and a read lock to the txs.reheap method - both of which are called by Filter during reorg adjustments to txpool

* txpool reorg locks

* more locks

* locks

* linters

* params, packaging: update version for v0.3.8-beta release

* core: add logs in reheap

---------

Co-authored-by: Alex <dalexwatts@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Merge qa to master (#808)

* Added checks to RPC requests and introduced new flags to customise the parameters (#657)

* added a check to reject rpc requests with batch size > the one set using a newly added flag (rpcbatchlimit)

* added a check to reject rpc requests whose result size > the one set using a newly added flag (rpcreturndatalimit)

* updated the config files and docs

* chg : trieTimeout from 60 to 10 mins (#692)

* chg : trieTimeout from 60 to 10 mins

* chg : cache.timout to 10m from 1h in configs

* internal/cli/server : fix : added triesInMemory in config (#691)

* changed version from 0.3.0 to 0.3.4-beta (#693)

* fix nil state-sync issue, increase grpc limit (#695)

* Increase grpc message size limit in pprof

* consensus/bor/bor.go : stateSyncs init fixed [Fix #686]

* eth/filters: handle nil state-sync before notify

* eth/filters: update check

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>

* core, tests/bor: add more tests for state-sync validation (#710)

* core: add get state sync function for tests

* tests/bor: add validation for state sync events post consensus

* Arpit/temp bor sync (#701)

* Increase grpc message size limit in pprof

* ReadBorReceipts improvements

* use internal function

* fix tests

* fetch geth upstread for ReadBorReceiptRLP

* Only query bor receipt when the query index is equal to # tx in block body

This change reduces the frequency of calling ReadBorReceipt and
ReadBorTransaction, which are CPU and db intensive.

* Revert "fetch geth upstread for ReadBorReceiptRLP"

This reverts commit 2e838a6b1313d26674f3a8df4b044e35dcbf35a0.

* Restore ReadBorReceiptRLP

* fix bor receipts

* remove unused

* fix lints

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Revert "chg : trieTimeout from 60 to 10 mins (#692)" (#720)

This reverts commit 241843c7e7bb18e64d2e157fd6fbbd665f6ce9d9.

* Arpit/add execution pool 2 (#719)

* initial

* linters

* linters

* remove timeout

* update pool

* change pool size function

* check nil

* check nil

* fix tests

* Use execution pool from server in all handlers

* simplify things

* test fix

* add support for cli, config

* add to cli and config

* merge base branch

* debug statements

* fix bug

* atomic pointer timeout

* add apis

* update workerpool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* fix tests

* mutex

* refactor flag and value names

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* debug statements

* fix bug

* update workerpool

* atomic pointer timeout

* add apis

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* merge base branch

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* mutex

* fix tests

* Merge branch 'arpit/add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* Change default size of execution pool to 40

* refactor flag and value names

* fix merge conflicts

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* fix linters

* fix go.mod

* change sec to ms

* change default value for ep timeout

* fix node api calls

* comment setter for ep timeout

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* version change (#721)

* Event based pprof (#732)

* feature

* Save pprof to /tmp

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>

* Cherry-pick changes from develop (#738)

* Check if block is nil to prevent panic (#736)

* miner: use env for tracing instead of block object (#728)

---------

Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* add max code init size check in txpool (#739)

* Revert "Event based pprof" and update version (#742)

* Revert "Event based pprof (#732)"

This reverts commit 22fa4033e8fabb51c44e8d2a8c6bb695a6e9285e.

* params: update version to 0.3.4-beta3

* packaging/templates: update bor version

* internal/ethapi :: Fix : newRPCTransactionFromBlockIndex

* fix: remove assignment for bor receipt

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* Setting up bor to use hosted 18.04 runner as ubuntu provided 18.04 runner is end of life

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>
Co-authored-by: Martin Holst Swende <martin@swende.se>
Co-authored-by: marcello33 <marcelloardizzone@hotmail.it>
Co-authored-by: Raneet Debnath <raneetdebnath10@gmail.com>
Co-authored-by: Raneet Debnath <35629432+Raneet10@users.noreply.github.com>
Co-authored-by: Alex <dalexwatts@gmail.com>
Co-authored-by: Daniel Jones <djones@polygon.technology>

* core: remove duplicate tests

* miner: use get validators by hash in tests

---------

Co-authored-by: Daniel Jones <djones@polygon.technology>
Co-authored-by: Will Button <wbutton@polygon.technology>
Co-authored-by: Will Button <will@willbutton.com>
Co-authored-by: Daniel Jones <105369507+djpolygon@users.noreply.github.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>
Co-authored-by: Martin Holst Swende <martin@swende.se>
Co-authored-by: marcello33 <marcelloardizzone@hotmail.it>
Co-authored-by: Raneet Debnath <raneetdebnath10@gmail.com>
Co-authored-by: Raneet Debnath <35629432+Raneet10@users.noreply.github.com>
Co-authored-by: Alex <dalexwatts@gmail.com>

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Raneet Debnath <raneetdebnath10@gmail.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: builder90210 <anonbuilder90210@gmail.com>
Co-authored-by: Krishna Upadhyaya <KRISHNAU1604@GMAIL.COM>
Co-authored-by: Daniel Jones <djones@polygon.technology>
Co-authored-by: Will Button <wbutton@polygon.technology>
Co-authored-by: Will Button <will@willbutton.com>
Co-authored-by: Daniel Jones <105369507+djpolygon@users.noreply.github.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Raneet Debnath <35629432+Raneet10@users.noreply.github.com>
Co-authored-by: Didi <github@d10r.net>
Co-authored-by: ephess <e+github@ephess.nz>
Co-authored-by: Dmitry <467978…
maoueh pushed a commit to streamingfast/go-ethereum that referenced this issue Jun 9, 2023
* Added checks to RPC requests and introduced new flags to customise the parameters (#657)

* added a check to reject rpc requests with batch size > the one set using a newly added flag (rpcbatchlimit)

* added a check to reject rpc requests whose result size > the one set using a newly added flag (rpcreturndatalimit)

* updated the config files and docs

* chg : trieTimeout from 60 to 10 mins (#692)

* chg : trieTimeout from 60 to 10 mins

* chg : cache.timout to 10m from 1h in configs

* internal/cli/server : fix : added triesInMemory in config (#691)

* changed version from 0.3.0 to 0.3.4-beta (#693)

* fix nil state-sync issue, increase grpc limit (#695)

* Increase grpc message size limit in pprof

* consensus/bor/bor.go : stateSyncs init fixed [Fix #686]

* eth/filters: handle nil state-sync before notify

* eth/filters: update check

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>

* core, tests/bor: add more tests for state-sync validation (#710)

* core: add get state sync function for tests

* tests/bor: add validation for state sync events post consensus

* Arpit/temp bor sync (#701)

* Increase grpc message size limit in pprof

* ReadBorReceipts improvements

* use internal function

* fix tests

* fetch geth upstread for ReadBorReceiptRLP

* Only query bor receipt when the query index is equal to # tx in block body

This change reduces the frequency of calling ReadBorReceipt and
ReadBorTransaction, which are CPU and db intensive.

* Revert "fetch geth upstread for ReadBorReceiptRLP"

This reverts commit 2e838a6b1313d26674f3a8df4b044e35dcbf35a0.

* Restore ReadBorReceiptRLP

* fix bor receipts

* remove unused

* fix lints

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Revert "chg : trieTimeout from 60 to 10 mins (#692)" (#720)

This reverts commit 241843c7e7bb18e64d2e157fd6fbbd665f6ce9d9.

* Arpit/add execution pool 2 (#719)

* initial

* linters

* linters

* remove timeout

* update pool

* change pool size function

* check nil

* check nil

* fix tests

* Use execution pool from server in all handlers

* simplify things

* test fix

* add support for cli, config

* add to cli and config

* merge base branch

* debug statements

* fix bug

* atomic pointer timeout

* add apis

* update workerpool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* fix tests

* mutex

* refactor flag and value names

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* debug statements

* fix bug

* update workerpool

* atomic pointer timeout

* add apis

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* merge base branch

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* mutex

* fix tests

* Merge branch 'arpit/add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* Change default size of execution pool to 40

* refactor flag and value names

* fix merge conflicts

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* fix linters

* fix go.mod

* change sec to ms

* change default value for ep timeout

* fix node api calls

* comment setter for ep timeout

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* version change (#721)

* Event based pprof (#732)

* feature

* Save pprof to /tmp

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>

* Cherry-pick changes from develop (#738)

* Check if block is nil to prevent panic (#736)

* miner: use env for tracing instead of block object (#728)

---------

Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* add max code init size check in txpool (#739)

* Revert "Event based pprof" and update version (#742)

* Revert "Event based pprof (#732)"

This reverts commit 22fa4033e8fabb51c44e8d2a8c6bb695a6e9285e.

* params: update version to 0.3.4-beta3

* packaging/templates: update bor version

* internal/ethapi :: Fix : newRPCTransactionFromBlockIndex

* Merge master to qa (#813)

* Merge qa to master (#750)

* Added checks to RPC requests and introduced new flags to customise the parameters (#657)

* added a check to reject rpc requests with batch size > the one set using a newly added flag (rpcbatchlimit)

* added a check to reject rpc requests whose result size > the one set using a newly added flag (rpcreturndatalimit)

* updated the config files and docs

* chg : trieTimeout from 60 to 10 mins (#692)

* chg : trieTimeout from 60 to 10 mins

* chg : cache.timout to 10m from 1h in configs

* internal/cli/server : fix : added triesInMemory in config (#691)

* changed version from 0.3.0 to 0.3.4-beta (#693)

* fix nil state-sync issue, increase grpc limit (#695)

* Increase grpc message size limit in pprof

* consensus/bor/bor.go : stateSyncs init fixed [Fix #686]

* eth/filters: handle nil state-sync before notify

* eth/filters: update check

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>

* core, tests/bor: add more tests for state-sync validation (#710)

* core: add get state sync function for tests

* tests/bor: add validation for state sync events post consensus

* Arpit/temp bor sync (#701)

* Increase grpc message size limit in pprof

* ReadBorReceipts improvements

* use internal function

* fix tests

* fetch geth upstread for ReadBorReceiptRLP

* Only query bor receipt when the query index is equal to # tx in block body

This change reduces the frequency of calling ReadBorReceipt and
ReadBorTransaction, which are CPU and db intensive.

* Revert "fetch geth upstread for ReadBorReceiptRLP"

This reverts commit 2e838a6b1313d26674f3a8df4b044e35dcbf35a0.

* Restore ReadBorReceiptRLP

* fix bor receipts

* remove unused

* fix lints

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Revert "chg : trieTimeout from 60 to 10 mins (#692)" (#720)

This reverts commit 241843c7e7bb18e64d2e157fd6fbbd665f6ce9d9.

* Arpit/add execution pool 2 (#719)

* initial

* linters

* linters

* remove timeout

* update pool

* change pool size function

* check nil

* check nil

* fix tests

* Use execution pool from server in all handlers

* simplify things

* test fix

* add support for cli, config

* add to cli and config

* merge base branch

* debug statements

* fix bug

* atomic pointer timeout

* add apis

* update workerpool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* fix tests

* mutex

* refactor flag and value names

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* debug statements

* fix bug

* update workerpool

* atomic pointer timeout

* add apis

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* merge base branch

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* mutex

* fix tests

* Merge branch 'arpit/add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* Change default size of execution pool to 40

* refactor flag and value names

* fix merge conflicts

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* fix linters

* fix go.mod

* change sec to ms

* change default value for ep timeout

* fix node api calls

* comment setter for ep timeout

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* version change (#721)

* Event based pprof (#732)

* feature

* Save pprof to /tmp

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>

* Cherry-pick changes from develop (#738)

* Check if block is nil to prevent panic (#736)

* miner: use env for tracing instead of block object (#728)

---------

Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* add max code init size check in txpool (#739)

* Revert "Event based pprof" and update version (#742)

* Revert "Event based pprof (#732)"

This reverts commit 22fa4033e8fabb51c44e8d2a8c6bb695a6e9285e.

* params: update version to 0.3.4-beta3

* packaging/templates: update bor version

* params, packaging/templates: update bor version

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* core, miner: add sub-spans for tracing (#753)

* core, miner: add sub-spans for tracing

* fix linters

* core: add logs for debugging

* core: add more logs to print tdd while reorg

* fix linters

* core: minor fix

* core: remove debug logs

* core: use different span for write block and set head

* core: use internal context for sending traces (#755)

* core: add : impossible reorg block dump (#754)

* add : impossible reorg block dump

* chg : 3 seperate files for impossoble reorg dump

* add : use exportBlocks method and RLP blocks before writing

* chg : small changes

* bump : go version from 1.19 to 1.20.1 (#761)

* Revert "bump : go version from 1.19 to 1.20.1 (#761)"

This reverts commit 4561012af9a31d20c2715ce26e4b39ca93420b8b.

* core/vm: use optimized bigint (#26021)

* Add holiman/big

* Fix linter

* Bump version to v0.3.5

* fix lints from develop (few lints decided to appear from code that was untouched, weird)

* upgrade crypto lib version (#770)

* bump dep : github.com/Masterminds/goutils to v1.1.1 (#769)

* mardizzone/pos-1313: bump crypto dependency (#772)

* dev: chg: bumd net dependency

* dev: chg: bump crypto dependency

* dev: chg: bump crypto dependency

* bump dep : golang.org/x/net to v0.8.0 (#771)

* Verify validator set against local contract on receiving an end-of-sprint block (#768)

* Verify validator set against local contract on receiving an end-of-sprint block

* Fix tests

* Respect error returned by ParseValidators

* Keep going back until a parent block presents

* core/txpool: implement DoS defenses from geth (#778)

* Hotfixes and deps bump (#776)

* dev: chg: bump deps

* internal/cli/server, rpc: lower down http readtimeout to 10s

* dev: chg: get p2p adapter

* dev: chg: lower down jsonrpc readtimeout to 10s

* cherry-pick txpool optimisation changes

* add check for empty lists in txpool (#704)

* add check

* linters

* core, miner: add empty instrumentation name for tracing

---------

Co-authored-by: Raneet Debnath <raneetdebnath10@gmail.com>
Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Evgeny Danilenko <6655321@bk.ru>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* packaging,params: bump to v0.3.6 (#782)

* v0.3.6 fix (#787)

* Fix get validator set in header verifier

* chg : commit tx logs from info to debug (#673)

* chg : commit tx logs from info to debug

* fix : minor changes

* chg : miner : commitTransactions-stats moved from info to debug

* lint : fix linters

* refactor logging

* miner : chg : UnauthorizedSignerError to debug

* lint : fix lint

* fix : log.Logger interface compatibility

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Remove unnecessary sorting of valset from header in verification

* dev: chg: version bump

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: marcello33 <marcelloardizzone@hotmail.it>

* core: improve locks in txpool (#807)

* added a write lock to the txs.filter method and a read lock to the txs.reheap method - both of which are called by Filter during reorg adjustments to txpool

* txpool reorg locks

* more locks

* locks

* linters

* params, packaging: update version for v0.3.8-beta release

* core: add logs in reheap

---------

Co-authored-by: Alex <dalexwatts@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Merge qa to master (#808)

* Added checks to RPC requests and introduced new flags to customise the parameters (#657)

* added a check to reject rpc requests with batch size > the one set using a newly added flag (rpcbatchlimit)

* added a check to reject rpc requests whose result size > the one set using a newly added flag (rpcreturndatalimit)

* updated the config files and docs

* chg : trieTimeout from 60 to 10 mins (#692)

* chg : trieTimeout from 60 to 10 mins

* chg : cache.timout to 10m from 1h in configs

* internal/cli/server : fix : added triesInMemory in config (#691)

* changed version from 0.3.0 to 0.3.4-beta (#693)

* fix nil state-sync issue, increase grpc limit (#695)

* Increase grpc message size limit in pprof

* consensus/bor/bor.go : stateSyncs init fixed [Fix #686]

* eth/filters: handle nil state-sync before notify

* eth/filters: update check

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>

* core, tests/bor: add more tests for state-sync validation (#710)

* core: add get state sync function for tests

* tests/bor: add validation for state sync events post consensus

* Arpit/temp bor sync (#701)

* Increase grpc message size limit in pprof

* ReadBorReceipts improvements

* use internal function

* fix tests

* fetch geth upstread for ReadBorReceiptRLP

* Only query bor receipt when the query index is equal to # tx in block body

This change reduces the frequency of calling ReadBorReceipt and
ReadBorTransaction, which are CPU and db intensive.

* Revert "fetch geth upstread for ReadBorReceiptRLP"

This reverts commit 2e838a6b1313d26674f3a8df4b044e35dcbf35a0.

* Restore ReadBorReceiptRLP

* fix bor receipts

* remove unused

* fix lints

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Revert "chg : trieTimeout from 60 to 10 mins (#692)" (#720)

This reverts commit 241843c7e7bb18e64d2e157fd6fbbd665f6ce9d9.

* Arpit/add execution pool 2 (#719)

* initial

* linters

* linters

* remove timeout

* update pool

* change pool size function

* check nil

* check nil

* fix tests

* Use execution pool from server in all handlers

* simplify things

* test fix

* add support for cli, config

* add to cli and config

* merge base branch

* debug statements

* fix bug

* atomic pointer timeout

* add apis

* update workerpool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* fix tests

* mutex

* refactor flag and value names

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* debug statements

* fix bug

* update workerpool

* atomic pointer timeout

* add apis

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* merge base branch

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* mutex

* fix tests

* Merge branch 'arpit/add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* Change default size of execution pool to 40

* refactor flag and value names

* fix merge conflicts

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* fix linters

* fix go.mod

* change sec to ms

* change default value for ep timeout

* fix node api calls

* comment setter for ep timeout

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* version change (#721)

* Event based pprof (#732)

* feature

* Save pprof to /tmp

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>

* Cherry-pick changes from develop (#738)

* Check if block is nil to prevent panic (#736)

* miner: use env for tracing instead of block object (#728)

---------

Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* add max code init size check in txpool (#739)

* Revert "Event based pprof" and update version (#742)

* Revert "Event based pprof (#732)"

This reverts commit 22fa4033e8fabb51c44e8d2a8c6bb695a6e9285e.

* params: update version to 0.3.4-beta3

* packaging/templates: update bor version

* internal/ethapi :: Fix : newRPCTransactionFromBlockIndex

* fix: remove assignment for bor receipt

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* Setting up bor to use hosted 18.04 runner as ubuntu provided 18.04 runner is end of life

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>
Co-authored-by: Martin Holst Swende <martin@swende.se>
Co-authored-by: marcello33 <marcelloardizzone@hotmail.it>
Co-authored-by: Raneet Debnath <raneetdebnath10@gmail.com>
Co-authored-by: Raneet Debnath <35629432+Raneet10@users.noreply.github.com>
Co-authored-by: Alex <dalexwatts@gmail.com>
Co-authored-by: Daniel Jones <djones@polygon.technology>

* merge v0.3.9-alpha to qa (#824)

* commit logs

* CI: test launch devnet without hardcoded sleep time (pos-534)

* CI: try using checked out bor path

* CI: fix missing ;

* CI: fix assignment operator

* CI: echo peers and block no.

* CI: cleanup

* minor chg: add new line

* dev: add: pos-944: snyk and govuln integration (#578)

* dev: add: pos-944 security ci and readme

* dev: add: pos-944 remove linters as this is included already in build ci

* dev: chg: pos-947 dependencies upgrade to solve snyk security issues

* dev: chg: update security-ci

* dev: chg: remove linter to allow replacements for security issues

* dev: add: pos-944 verify path when updating metrics from config

* dev: add: pos-944 fix linter

* dev: add: pos-944 add .snyk policy file / fix snyk code vulnerabilities

* dev: fix: pos-944 import common package / gitignore snyk dccache file

* dev: fix: pos-944 verify canonical path for crashers

* dev: fix: pos-944 linter

* dev: add: pos-976 add govuln check

* dev: add: pos-976 test upload with permissions

* dev: add: pos-976 remove duplicated upload

* dev: add: pos-976 report upload

* dev: add: pos-976 remove upload

* dev: fix: pos-944 fix govuln action

* dev: fix: pos-944 move govulncheck to security-ci

* dev: fix: pos-944 bump golvun action and golang versions

* dev: fix: pos-944 remove persmissions and fix conflicts

* dev: chg: restore err msg

* dev: chg: remove duplicated function

* dev: chg: sort import

* dev: chg: fix linter

* dev: add: use common VerifyCrasher function to avoid duplications / replace deprecated ioutils.ReadFile

* dev: fix: typo

* fix linters

* upgrade grpc version

* add ignore rule for net/http2

* Shivam/txpool tracing (#604)

* lock, unlock to rlock, runlock

* add : tracing Pending() and Locals()

* Log time spent in committing a tx during mining

* Remove data from logging

* Move log into case where a tx completes without error

* profile fillTransactions

* fix conflict

* bug fixes

* add logs

* txpool: add tracing in Pending()

* rearrange tracing

* add attributes

* fix

* fix

* log error in profiling

* update file mode and file path for profiling

* full profiling

* fix log

* fix log

* less wait

* fix

* fix

* logs

* worker: use block number for prof files

* initial

* txList add

* fix gas calculation

* fix

* green tests

* linters

* prettify

* allocate less

* no locks between pending and reorg

* no locks

* no locks on locals

* more tests

* linters

* less allocs

* comment

* optimize errors

* linters

* fix

* fix

* Linters

* linters

* linters

* simplify errors

* atomics for transactions

* fix

* optimize workers

* fix copy

* linters

* txpool tracing

* linters

* fix tracing

* duration in mcs

* locks

* metrics

* fix

* cache hit/miss

* less locks on evict

* remove once

* remove once

* switch off pprof

* fix data race

* fix data race

* add : sealed total/empty blocks metric gauge

* add : RPC debug_getTraceStack

* fix : RPC debug_getTraceStack

* fix : RPC debug_getTraceStack for all go-routines

* linters

* add data race test on txpool

* fix concurrency

* noleak

* increase batch size

* prettify

* tests

* baseFee mutex

* panic fix

* linters

* fix gas fee data race

* linters

* more transactions

* debug

* debug

* fix ticker

* fix test

* add cacheMu

* more tests

* fix test panic

* linters

* add statistics

* add statistics

* txitems data race

* fix tx list Has

* fix : lint

Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Reduce txArriveTimeout to 100ms

* init : remove exit on keystore err

* add : multiple keystore tolerance

* lint : fix linters

* chg : use standard logging

* chg : logging strings

* Added flags to run heimdall as a child process (#597)

* Added flags to run heimdall as a child process

* Fix: Lint

* Fix btcd package dependency for CI

* Update btcd package version

* Try removing ambigious importts

* dev: fix: lint fix for parallel tests

* remove delete for ambigious import

* Remove unwanted space

* go mod tidy

* try replace

* try replace

* use vendor

* rename vendor

* tidy

* vendor btcec

* clean up

* remove submodule

* remove submodule

* remove submodule

* remove submodule

* remove vendor & added replacer in test

* go mod tidy

* added replacer

* Update replacer

* Update replacer

* Merge branch 'develop' into run-heimdall-flags

* Skip TestGolangBindings

* Typo fix

* Remove unwanted changes

Co-authored-by: marcello33 <marcelloardizzone@hotmail.it>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* dev: chg: update PR template to include nodes audience check (#641)

* dev: chg: update PR template to include nodes audience check

* dev: chg: better description

* dev: chg: add entry to changes too

* sonarqube integration (#658)

* dev: add: sonarqube integration into security-ci

* dev: add: exclude java files from sonarqube analysis

* Merge branch 'qa' and 'master' into develop (#663)

* Adding in Mumbai/Mainnet precursor deb packaging for tests to use during upgrade(iterations to come)

* Added changes per discussion in PR, more changes may be necessary

* Adding prerelease true

* Disabling goreleaser

* Removing README swap file

* change bor_dir and add bor user for v0.3.0 release

* rollback bor user and use root

* metrics: handle equal to separated config flag (#596)

* metrics: handle  based config path

* internal/cli/server: add more context to logs

* use space separated flag and value in bor.service

* fixed static-nodes related buf (os independent) (#598)

* fixed static-nodes related buf (os independent)

* taking static-nodes as input if default not present

* Update default flags (#600)

* internal/cli/server: use geth's default for txpool.pricelimit and add comments

* builder/files: update config.toml for mainnet

* packaging/templates: update defaults for mainnet and mumbai

* internal/cli/server: skip overriding cache

* packaging/templates: update cache value for mainnet

* packaging/templates: update gcmode for archive mumbai node

* metrics: handle nil telemetry config (#601)

* resolve merge conflicts

* update go version in release.yml

* update goversion in makefile

* update Docker login for goreleaser-cross v1.19

* Cleanup for the packager to use git tag in the package profile naming. Added conditional check for directory structure, this is in prep for v0.3.1, as this will create a failure on upgrade path in package due to file exist

* added a toml configuration file with comments describing each flag (#607)

* added a toml configuration file with comments describing each flag

* internal/cli/server: update flag description

* docs/cli: update example config and description of flags

* docs: update new-cli docs

Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* Adding of 0.3.0 package changes, control file updates, postinst changes, and packager update

* added ancient datadir flag and toml field, need to decide on default value and update the conversion script

* updated toml files with ancient field

* Add support for new flags in new config.toml, which were present in old config.toml (#612)

* added HTTPTimeouts, and TrieTimeout flag in new tol, from old toml

* added RAW fields for these time.Duration flags

* updated the conversion script to support these extra 4 flags

* removed hcl and json config tests as we are only supporting toml config files

* updated toml files with cache.timeout field

* updated toml files with jsonrpc.timeouts field

* tests/bor: expect a call for latest checkpoint

* tests/bor: expect a call for latest checkpoint

* packaging/templates: update cache values for archive nodes

Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* remove unwanted code

* Fix docker publish authentication issue

In gorelease-cross 1.19+, dockerhub authentication will require docker
logion action followed by mounting docker config file. See
https://github.com/goreleaser/goreleaser-cross#github-actions.

* Revert "update Docker login for goreleaser-cross v1.19"

This reverts commit 4d19cf5342a439d98cca21b03c63a0bc075769cf.

* Bump version to stable

* Revert "Merge pull request #435 from maticnetwork/POS-553"

This reverts commit 657d262defc9c94e9513b3d45230492d8b20eac7, reversing
changes made to 88dbfa1c13c15464d3c1a3085a9f12d0ffb9b218.

* revert change for release for go1.19

* Add default values to CLI helper and docs

This commit adds default values to CLI helper and docs. When the default value of a string flag, slice string flag, or map string flag is empty, its helper message won't show any default value.

* Add a summary of new CLI in docs

* Updating packager as binutils changed version so that apt-get installs current versions

* Add state pruning to new CLI

* Minor wording fix in prune state description

* Bumping control file versions

* Mainnet Delhi fork

* Set version to stable

* change delhi hardfork block number

* handle future chain import and skip peer drop (#650)

* handle future chain import and skip peer drop

* add block import metric

* params: bump version to v0.3.3-stable

* Bump bor version in control files for v0.3.3 mainnet release

Co-authored-by: Daniel Jones <djones@polygon.technology>
Co-authored-by: Will Button <wbutton@polygon.technology>
Co-authored-by: Will Button <will@willbutton.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Daniel Jones <105369507+djpolygon@users.noreply.github.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>

* CI: use matic-cli master branch

* trigger ci

* internal/cli/server : fix : added triesInMemory in config (#677)

* update requirements in README (#681)

* consensus/bor : add : devFakeAuthor flag

* core,eth,internal/cli,internal/ethapi: add --rpc.allow-unprotected-txs flag to allow txs to get replayed (for shadow node)

* internal/cli: add `skiptrace` flag for profiling (#715)

* internal/cli: add skiptrace flag

* docs: update docs for skiptrace flag

* Added flag in Status to wait for backend, and fixed panic issue. (#708)

* checking if backend is available during status call, and added a flag to wait if backend is not available

* added test for status command (does not cover the whole code)

* Revert "Reduce txArriveTimeout to 100ms" (#707)

This reverts commit 243d231fe45bc02f33678bb4f69e941167d7f466.

* consensus/bor : add : devFakeAuthor flag (#697)

* add check for empty lists in txpool (#704)

* add check

* linters

* dev: chg: POS-215 move sonarqube to own ci (#733)

* Added verbosity flag, supports log-level as well, but will remove that in future. (#722)

* changed log-level flag back to verbosity, and updated the conversion script

* supporting both verbosity and log-level, with a message to deprecat log-level

* converted verbosity to a int value

* Check if block is nil to prevent panic (#736)

* miner: use env for tracing instead of block object (#728)

* Add : mutex pprof profile (#731)

* add : mutex pprof profile

* rm : remove trace from default pprof profiles

* chg : commit tx logs from info to debug (#673)

* chg : commit tx logs from info to debug

* fix : minor changes

* chg : miner : commitTransactions-stats moved from info to debug

* lint : fix linters

* refactor logging

* miner : chg : UnauthorizedSignerError to debug

* lint : fix lint

* fix : log.Logger interface compatibility

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Add : commit details to bor version (#730)

* add : commit details to bor version

* fix : MAKEFILE

* undo : rm test-txpool-race

* rm : params/build_date

* rm : params/gitbranch and params/gitdate

* core,docs/cli,internal/cli/server: make docs

* builder,docs/cli,packaging: update toml files

* mardizzone/hotfix-snyk: remove vcs build when running snyk (#745)

* Feat : SetMaxPeers (#726)

* init : add admin.setMaxPeers and getMaxPeers

* lint : fix lint

* add : some comments

* Update wiki link (#762)

* Heimdall App implementation (#646)

* added support for miner.recommit flag (#743)

* interrupting commit experiment (#556)

* initial

* delete

* linters

* big benchmark

* benchmark big ints

* delay

* fix generate

* remove debug

* miner : chg : remove noempty check

* fix lints

* consensus/bor: handle unauthorized signer in consensus.Prepare (#651)

* fix : break loop fix

* lint : fix

* lint : more lint fix

* fix : skip TestEmptyWorkEthash and TestEmptyWorkClique

* add : metrics commitInterruptCounter

---------

Co-authored-by: Shivam Sharma <shivam691999@gmail.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* internal/cli: added missing flags (#744)

* minor comment update

* added support for rpc.evmtimeout flag

* added support for vmdebug (EnablePreimageRecording) flag

* added support for jsonrpc.auth.(jwtsecret, addr, port, vhosts) flags

* added support for miner.recommit flag

* added support for gpo.maxheaderhistory and gpo.maxblockhistory flag

* Revert "added support for miner.recommit flag"

This reverts commit fcb722e4bf5bdda23d4c91da40ab95c9023a80c3.

* added pprof related flags (expect --pprof.cpuprofile - Write CPU profile to the given file)

* added support for --dev.gaslimit flag

* added support for --fdlimit flag

* added support for --netrestrict flag

* added support for --nodekey and --nodekeyhex flag

* added support for --vmodule, --log.json, --log.backtrace, and --log.debug flags

* fixed related lint errors

* fix lints from develop (few lints decided to appear from code that was untouched, weird)

* more weird lints from develop

* small precautionary fix

* small bug ;) fix in NetRestrict

* weird lints

* change vmdebug = true to vmdebug = false

* internal/ethapi: set rpc gas cap as default gas limit when creating access list

* add : testcase for CommitInterruptExperiment (#792)

* add : TestCommitInterruptExperimentBor

* lint : fix lint

* chg : add waitgroup

* dev: chg: continue on error when uploading snyk results to GH (#795)

* consensus/bor: revert handle unauthorized signer in consensus.Prepare

* Revert "consensus/bor: handle unauthorized signer in consensus.Prepare (#651)"

This reverts commit 9ce8c7de75a1b5021bb6f2b8086e813c8244b22c.

* eth/downloader/whitelist: skip future chain validation (#796)

* eth/downloader/whitelist: skip future chain validation

* eth/downloader/whitelist: fix tests for future chain import

* Setting up bor to use hosted 18.04 runner as ubuntu provided 18.04 runner is end of life

* Merge qa to develop (#814)

* Adding in Mumbai/Mainnet precursor deb packaging for tests to use during upgrade(iterations to come)

* Added changes per discussion in PR, more changes may be necessary

* Adding prerelease true

* Disabling goreleaser

* Removing README swap file

* change bor_dir and add bor user for v0.3.0 release

* rollback bor user and use root

* metrics: handle equal to separated config flag (#596)

* metrics: handle  based config path

* internal/cli/server: add more context to logs

* use space separated flag and value in bor.service

* fixed static-nodes related buf (os independent) (#598)

* fixed static-nodes related buf (os independent)

* taking static-nodes as input if default not present

* Update default flags (#600)

* internal/cli/server: use geth's default for txpool.pricelimit and add comments

* builder/files: update config.toml for mainnet

* packaging/templates: update defaults for mainnet and mumbai

* internal/cli/server: skip overriding cache

* packaging/templates: update cache value for mainnet

* packaging/templates: update gcmode for archive mumbai node

* metrics: handle nil telemetry config (#601)

* resolve merge conflicts

* update go version in release.yml

* update goversion in makefile

* update Docker login for goreleaser-cross v1.19

* Cleanup for the packager to use git tag in the package profile naming. Added conditional check for directory structure, this is in prep for v0.3.1, as this will create a failure on upgrade path in package due to file exist

* added a toml configuration file with comments describing each flag (#607)

* added a toml configuration file with comments describing each flag

* internal/cli/server: update flag description

* docs/cli: update example config and description of flags

* docs: update new-cli docs

Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* Adding of 0.3.0 package changes, control file updates, postinst changes, and packager update

* added ancient datadir flag and toml field, need to decide on default value and update the conversion script

* updated toml files with ancient field

* Add support for new flags in new config.toml, which were present in old config.toml (#612)

* added HTTPTimeouts, and TrieTimeout flag in new tol, from old toml

* added RAW fields for these time.Duration flags

* updated the conversion script to support these extra 4 flags

* removed hcl and json config tests as we are only supporting toml config files

* updated toml files with cache.timeout field

* updated toml files with jsonrpc.timeouts field

* tests/bor: expect a call for latest checkpoint

* tests/bor: expect a call for latest checkpoint

* packaging/templates: update cache values for archive nodes

Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* remove unwanted code

* Fix docker publish authentication issue

In gorelease-cross 1.19+, dockerhub authentication will require docker
logion action followed by mounting docker config file. See
https://github.com/goreleaser/goreleaser-cross#github-actions.

* Revert "update Docker login for goreleaser-cross v1.19"

This reverts commit 4d19cf5342a439d98cca21b03c63a0bc075769cf.

* Bump version to stable

* Revert "Merge pull request #435 from maticnetwork/POS-553"

This reverts commit 657d262defc9c94e9513b3d45230492d8b20eac7, reversing
changes made to 88dbfa1c13c15464d3c1a3085a9f12d0ffb9b218.

* revert change for release for go1.19

* Add default values to CLI helper and docs

This commit adds default values to CLI helper and docs. When the default value of a string flag, slice string flag, or map string flag is empty, its helper message won't show any default value.

* Add a summary of new CLI in docs

* Updating packager as binutils changed version so that apt-get installs current versions

* Add state pruning to new CLI

* Minor wording fix in prune state description

* Bumping control file versions

* Mainnet Delhi fork

* Set version to stable

* change delhi hardfork block number

* handle future chain import and skip peer drop (#650)

* handle future chain import and skip peer drop

* add block import metric

* params: bump version to v0.3.3-stable

* Bump bor version in control files for v0.3.3 mainnet release

* Added checks to RPC requests and introduced new flags to customise the parameters (#657)

* added a check to reject rpc requests with batch size > the one set using a newly added flag (rpcbatchlimit)

* added a check to reject rpc requests whose result size > the one set using a newly added flag (rpcreturndatalimit)

* updated the config files and docs

* chg : trieTimeout from 60 to 10 mins (#692)

* chg : trieTimeout from 60 to 10 mins

* chg : cache.timout to 10m from 1h in configs

* internal/cli/server : fix : added triesInMemory in config (#691)

* changed version from 0.3.0 to 0.3.4-beta (#693)

* fix nil state-sync issue, increase grpc limit (#695)

* Increase grpc message size limit in pprof

* consensus/bor/bor.go : stateSyncs init fixed [Fix #686]

* eth/filters: handle nil state-sync before notify

* eth/filters: update check

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>

* core, tests/bor: add more tests for state-sync validation (#710)

* core: add get state sync function for tests

* tests/bor: add validation for state sync events post consensus

* Arpit/temp bor sync (#701)

* Increase grpc message size limit in pprof

* ReadBorReceipts improvements

* use internal function

* fix tests

* fetch geth upstread for ReadBorReceiptRLP

* Only query bor receipt when the query index is equal to # tx in block body

This change reduces the frequency of calling ReadBorReceipt and
ReadBorTransaction, which are CPU and db intensive.

* Revert "fetch geth upstread for ReadBorReceiptRLP"

This reverts commit 2e838a6b1313d26674f3a8df4b044e35dcbf35a0.

* Restore ReadBorReceiptRLP

* fix bor receipts

* remove unused

* fix lints

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Revert "chg : trieTimeout from 60 to 10 mins (#692)" (#720)

This reverts commit 241843c7e7bb18e64d2e157fd6fbbd665f6ce9d9.

* Arpit/add execution pool 2 (#719)

* initial

* linters

* linters

* remove timeout

* update pool

* change pool size function

* check nil

* check nil

* fix tests

* Use execution pool from server in all handlers

* simplify things

* test fix

* add support for cli, config

* add to cli and config

* merge base branch

* debug statements

* fix bug

* atomic pointer timeout

* add apis

* update workerpool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* fix tests

* mutex

* refactor flag and value names

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* debug statements

* fix bug

* update workerpool

* atomic pointer timeout

* add apis

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* merge base branch

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* mutex

* fix tests

* Merge branch 'arpit/add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* Change default size of execution pool to 40

* refactor flag and value names

* fix merge conflicts

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* fix linters

* fix go.mod

* change sec to ms

* change default value for ep timeout

* fix node api calls

* comment setter for ep timeout

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* version change (#721)

* Event based pprof (#732)

* feature

* Save pprof to /tmp

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>

* Cherry-pick changes from develop (#738)

* Check if block is nil to prevent panic (#736)

* miner: use env for tracing instead of block object (#728)

---------

Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* add max code init size check in txpool (#739)

* Revert "Event based pprof" and update version (#742)

* Revert "Event based pprof (#732)"

This reverts commit 22fa4033e8fabb51c44e8d2a8c6bb695a6e9285e.

* params: update version to 0.3.4-beta3

* packaging/templates: update bor version

* internal/ethapi :: Fix : newRPCTransactionFromBlockIndex

* Merge master to qa (#813)

* Merge qa to master (#750)

* Added checks to RPC requests and introduced new flags to customise the parameters (#657)

* added a check to reject rpc requests with batch size > the one set using a newly added flag (rpcbatchlimit)

* added a check to reject rpc requests whose result size > the one set using a newly added flag (rpcreturndatalimit)

* updated the config files and docs

* chg : trieTimeout from 60 to 10 mins (#692)

* chg : trieTimeout from 60 to 10 mins

* chg : cache.timout to 10m from 1h in configs

* internal/cli/server : fix : added triesInMemory in config (#691)

* changed version from 0.3.0 to 0.3.4-beta (#693)

* fix nil state-sync issue, increase grpc limit (#695)

* Increase grpc message size limit in pprof

* consensus/bor/bor.go : stateSyncs init fixed [Fix #686]

* eth/filters: handle nil state-sync before notify

* eth/filters: update check

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>

* core, tests/bor: add more tests for state-sync validation (#710)

* core: add get state sync function for tests

* tests/bor: add validation for state sync events post consensus

* Arpit/temp bor sync (#701)

* Increase grpc message size limit in pprof

* ReadBorReceipts improvements

* use internal function

* fix tests

* fetch geth upstread for ReadBorReceiptRLP

* Only query bor receipt when the query index is equal to # tx in block body

This change reduces the frequency of calling ReadBorReceipt and
ReadBorTransaction, which are CPU and db intensive.

* Revert "fetch geth upstread for ReadBorReceiptRLP"

This reverts commit 2e838a6b1313d26674f3a8df4b044e35dcbf35a0.

* Restore ReadBorReceiptRLP

* fix bor receipts

* remove unused

* fix lints

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Revert "chg : trieTimeout from 60 to 10 mins (#692)" (#720)

This reverts commit 241843c7e7bb18e64d2e157fd6fbbd665f6ce9d9.

* Arpit/add execution pool 2 (#719)

* initial

* linters

* linters

* remove timeout

* update pool

* change pool size function

* check nil

* check nil

* fix tests

* Use execution pool from server in all handlers

* simplify things

* test fix

* add support for cli, config

* add to cli and config

* merge base branch

* debug statements

* fix bug

* atomic pointer timeout

* add apis

* update workerpool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* fix tests

* mutex

* refactor flag and value names

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* debug statements

* fix bug

* update workerpool

* atomic pointer timeout

* add apis

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* merge base branch

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* mutex

* fix tests

* Merge branch 'arpit/add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* Change default size of execution pool to 40

* refactor flag and value names

* fix merge conflicts

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* fix linters

* fix go.mod

* change sec to ms

* change default value for ep timeout

* fix node api calls

* comment setter for ep timeout

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* version change (#721)

* Event based pprof (#732)

* feature

* Save pprof to /tmp

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>

* Cherry-pick changes from develop (#738)

* Check if block is nil to prevent panic (#736)

* miner: use env for tracing instead of block object (#728)

---------

Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* add max code init size check in txpool (#739)

* Revert "Event based pprof" and update version (#742)

* Revert "Event based pprof (#732)"

This reverts commit 22fa4033e8fabb51c44e8d2a8c6bb695a6e9285e.

* params: update version to 0.3.4-beta3

* packaging/templates: update bor version

* params, packaging/templates: update bor version

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* core, miner: add sub-spans for tracing (#753)

* core, miner: add sub-spans for tracing

* fix linters

* core: add logs for debugging

* core: add more logs to print tdd while reorg

* fix linters

* core: minor fix

* core: remove debug logs

* core: use different span for write block and set head

* core: use internal context for sending traces (#755)

* core: add : impossible reorg block dump (#754)

* add : impossible reorg block dump

* chg : 3 seperate files for impossoble reorg dump

* add : use exportBlocks method and RLP blocks before writing

* chg : small changes

* bump : go version from 1.19 to 1.20.1 (#761)

* Revert "bump : go version from 1.19 to 1.20.1 (#761)"

This reverts commit 4561012af9a31d20c2715ce26e4b39ca93420b8b.

* core/vm: use optimized bigint (#26021)

* Add holiman/big

* Fix linter

* Bump version to v0.3.5

* fix lints from develop (few lints decided to appear from code that was untouched, weird)

* upgrade crypto lib version (#770)

* bump dep : github.com/Masterminds/goutils to v1.1.1 (#769)

* mardizzone/pos-1313: bump crypto dependency (#772)

* dev: chg: bumd net dependency

* dev: chg: bump crypto dependency

* dev: chg: bump crypto dependency

* bump dep : golang.org/x/net to v0.8.0 (#771)

* Verify validator set against local contract on receiving an end-of-sprint block (#768)

* Verify validator set against local contract on receiving an end-of-sprint block

* Fix tests

* Respect error returned by ParseValidators

* Keep going back until a parent block presents

* core/txpool: implement DoS defenses from geth (#778)

* Hotfixes and deps bump (#776)

* dev: chg: bump deps

* internal/cli/server, rpc: lower down http readtimeout to 10s

* dev: chg: get p2p adapter

* dev: chg: lower down jsonrpc readtimeout to 10s

* cherry-pick txpool optimisation changes

* add check for empty lists in txpool (#704)

* add check

* linters

* core, miner: add empty instrumentation name for tracing

---------

Co-authored-by: Raneet Debnath <raneetdebnath10@gmail.com>
Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Evgeny Danilenko <6655321@bk.ru>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* packaging,params: bump to v0.3.6 (#782)

* v0.3.6 fix (#787)

* Fix get validator set in header verifier

* chg : commit tx logs from info to debug (#673)

* chg : commit tx logs from info to debug

* fix : minor changes

* chg : miner : commitTransactions-stats moved from info to debug

* lint : fix linters

* refactor logging

* miner : chg : UnauthorizedSignerError to debug

* lint : fix lint

* fix : log.Logger interface compatibility

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Remove unnecessary sorting of valset from header in verification

* dev: chg: version bump

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: marcello33 <marcelloardizzone@hotmail.it>

* core: improve locks in txpool (#807)

* added a write lock to the txs.filter method and a read lock to the txs.reheap method - both of which are called by Filter during reorg adjustments to txpool

* txpool reorg locks

* more locks

* locks

* linters

* params, packaging: update version for v0.3.8-beta release

* core: add logs in reheap

---------

Co-authored-by: Alex <dalexwatts@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Merge qa to master (#808)

* Added checks to RPC requests and introduced new flags to customise the parameters (#657)

* added a check to reject rpc requests with batch size > the one set using a newly added flag (rpcbatchlimit)

* added a check to reject rpc requests whose result size > the one set using a newly added flag (rpcreturndatalimit)

* updated the config files and docs

* chg : trieTimeout from 60 to 10 mins (#692)

* chg : trieTimeout from 60 to 10 mins

* chg : cache.timout to 10m from 1h in configs

* internal/cli/server : fix : added triesInMemory in config (#691)

* changed version from 0.3.0 to 0.3.4-beta (#693)

* fix nil state-sync issue, increase grpc limit (#695)

* Increase grpc message size limit in pprof

* consensus/bor/bor.go : stateSyncs init fixed [Fix #686]

* eth/filters: handle nil state-sync before notify

* eth/filters: update check

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>

* core, tests/bor: add more tests for state-sync validation (#710)

* core: add get state sync function for tests

* tests/bor: add validation for state sync events post consensus

* Arpit/temp bor sync (#701)

* Increase grpc message size limit in pprof

* ReadBorReceipts improvements

* use internal function

* fix tests

* fetch geth upstread for ReadBorReceiptRLP

* Only query bor receipt when the query index is equal to # tx in block body

This change reduces the frequency of calling ReadBorReceipt and
ReadBorTransaction, which are CPU and db intensive.

* Revert "fetch geth upstread for ReadBorReceiptRLP"

This reverts commit 2e838a6b1313d26674f3a8df4b044e35dcbf35a0.

* Restore ReadBorReceiptRLP

* fix bor receipts

* remove unused

* fix lints

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>

* Revert "chg : trieTimeout from 60 to 10 mins (#692)" (#720)

This reverts commit 241843c7e7bb18e64d2e157fd6fbbd665f6ce9d9.

* Arpit/add execution pool 2 (#719)

* initial

* linters

* linters

* remove timeout

* update pool

* change pool size function

* check nil

* check nil

* fix tests

* Use execution pool from server in all handlers

* simplify things

* test fix

* add support for cli, config

* add to cli and config

* merge base branch

* debug statements

* fix bug

* atomic pointer timeout

* add apis

* update workerpool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* fix tests

* mutex

* refactor flag and value names

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* debug statements

* fix bug

* update workerpool

* atomic pointer timeout

* add apis

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* fix issues

* change params

* fix issues

* fix ipc issue

* remove execution pool from IPC

* revert

* merge base branch

* Merge branch 'add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* mutex

* fix tests

* Merge branch 'arpit/add-execution-pool' of github.com:maticnetwork/bor into arpit/add-execution-pool

* Change default size of execution pool to 40

* refactor flag and value names

* fix merge conflicts

* ordering fix

* refactor flag and value names

* update default ep size to 40

* fix bor start issues

* revert file changes

* fix linters

* fix go.mod

* change sec to ms

* change default value for ep timeout

* fix node api calls

* comment setter for ep timeout

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>

* version change (#721)

* Event based pprof (#732)

* feature

* Save pprof to /tmp

---------

Co-authored-by: Jerry <jerrycgh@gmail.com>

* Cherry-pick changes from develop (#738)

* Check if block is nil to prevent panic (#736)

* miner: use env for tracing instead of block object (#728)

---------

Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* add max code init size check in txpool (#739)

* Revert "Event based pprof" and update version (#742)

* Revert "Event based pprof (#732)"

This reverts commit 22fa4033e8fabb51c44e8d2a8c6bb695a6e9285e.

* params: update version to 0.3.4-beta3

* packaging/templates: update bor version

* internal/ethapi :: Fix : newRPCTransactionFromBlockIndex

* fix: remove assignment for bor receipt

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>

* Setting up bor to use hosted 18.04 runner as ubuntu provided 18.04 runner is end of life

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>
Co-authored-by: Martin Holst Swende <martin@swende.se>
Co-authored-by: marcello33 <marcelloardizzone@hotmail.it>
Co-authored-by: Raneet Debnath <raneetdebnath10@gmail.com>
Co-authored-by: Raneet Debnath <35629432+Raneet10@users.noreply.github.com>
Co-authored-by: Alex <dalexwatts@gmail.com>
Co-authored-by: Daniel Jones <djones@polygon.technology>

* core: remove duplicate tests

* miner: use get validators by hash in tests

---------

Co-authored-by: Daniel Jones <djones@polygon.technology>
Co-authored-by: Will Button <wbutton@polygon.technology>
Co-authored-by: Will Button <will@willbutton.com>
Co-authored-by: Daniel Jones <105369507+djpolygon@users.noreply.github.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>
Co-authored-by: Martin Holst Swende <martin@swende.se>
Co-authored-by: marcello33 <marcelloardizzone@hotmail.it>
Co-authored-by: Raneet Debnath <raneetdebnath10@gmail.com>
Co-authored-by: Raneet Debnath <35629432+Raneet10@users.noreply.github.com>
Co-authored-by: Alex <dalexwatts@gmail.com>

---------

Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Raneet Debnath <raneetdebnath10@gmail.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: builder90210 <anonbuilder90210@gmail.com>
Co-authored-by: Krishna Upadhyaya <KRISHNAU1604@GMAIL.COM>
Co-authored-by: Daniel Jones <djones@polygon.technology>
Co-authored-by: Will Button <wbutton@polygon.technology>
Co-authored-by: Will Button <will@willbutton.com>
Co-authored-by: Daniel Jones <105369507+djpolygon@users.noreply.github.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Raneet Debnath <35629432+Raneet10@users.noreply.github.com>
Co-authored-by: Didi <github@d10r.net>
Co-authored-by: ephess <e+github@ephess.nz>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Martin Holst Swende <martin@swende.se>
Co-authored-by: Alex <dalexwatts@gmail.com>

* dev: chg: version bump for v0.3.9-beta (#825)

* eth/fetcher: if peers never respond, drop them (#837) (#844)

* dev: chg: bump version to beta-2 for v0.3.9 (#845)

* rm : disable interruptCommit on txsCh select case (#848)

* dev: chg: version bump (#849)

* fix : go-routine leak in commitInterrupt channel (#851)

* fix : go-routine leak in commitInterrupt channel

* fix : fix lint

* rm : remove t.Parallel() from TestGenerateBlockAndImport tests

* fix : minor optimisations in test

* fix : BenchmarkBorMining

* dev: chg: beta version bump (#853)

* dev: chg: bump version to stable

* dev: chg: contracts branch

* dev: fix: linter

* dev: chg: update templum/govulncheck-action to fix execution

---------

Co-authored-by: SHIVAM SHARMA <shivam691999@gmail.com>
Co-authored-by: Pratik Patil <pratikspatil024@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Jerry <jerrycgh@gmail.com>
Co-authored-by: Daniil <daniil.melnik@chainstack.com>
Co-authored-by: Arpit Temani <temaniarpit27@gmail.com>
Co-authored-by: Evgeny Danienko <6655321@bk.ru>
Co-authored-by: Dmitry <46797839+dkeysil@users.noreply.github.com>
Co-authored-by: Martin Holst Swende <martin@swende.se>
Co-authored-by: Raneet Debnath <raneetdebnath10@gmail.com>
Co-authored-by: Raneet Debnath <35629432+Raneet10@users.noreply.github.com>
Co-authored-by: Alex <dalexwatts@gmail.com>
Co-authored-by: Daniel Jones <djones@polygon.technology>
Co-authored-by: builder90210 <anonbuilder90210@gmail.com>
Co-authored-by: Krishna Upadhyaya <KRISHNAU1604@GMAIL.COM>
Co-authored-by: Will Button <wbutton@polygon.technology>
Co-authored-by: Will Button <will@willbutton.com>
Co-authored-by: Daniel Jones <105369507+djpolygon@users.noreply.github.com>
Co-authored-by: Didi <github@d10r.net>
Co-authored-by: ephess <e+github@ephess.nz>
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

No branches or pull requests

3 participants