-
Notifications
You must be signed in to change notification settings - Fork 21.5k
Closed
Labels
Description
System information
Geth
Version: 1.13.15-stable
Git Commit: c5ba367
Git Commit Date: 20240417
Architecture: amd64
Go Version: go1.22.3
Operating System: linux
OS & Version: Ubuntu 22.04.3 LTS
Expected behaviour
After changing configurations, the node should not panic; at the very least, it should provide a friendly message to the user before panicking.
Actual behaviour
I repeatedly modified the configuration file and restarted the node. During one of the restarts, the node panicked at runtime. Below are the logs and error code from the node when the panic occurred.

Steps to reproduce the behaviour
I saved the node configuration file from when the panic occurred and attempted to reproduce the issue, but was unable to do so. However, the panic did indeed happen.
[Eth]
NetworkId = 123454321
SyncMode = "snap"
EthDiscoveryURLs = []
SnapDiscoveryURLs = []
NoPruning = false
NoPrefetch = false
TxLookupLimit = 2350000
TransactionHistory = 2350000
LightPeers = 100
DatabaseFreezer = "geth"
TrieCleanCache = 154
TrieDirtyCache = 256
TrieTimeout = 3600000000000
SnapshotCache = 102
Preimages = false
EnablePreimageRecording = false
RPCGasCap = 50000000
RPCEVMTimeout = 5000000000
[Eth.Miner]
GasFloor = 0
GasCeil = 30000000
GasPrice = 1000000000
Recommit = 2000000000
NewPayloadTimeout = 2000000000
[Eth.TxPool]
Locals = []
NoLocals = false
Journal = "transactions.rlp"
Rejournal = 3600000000000
PriceLimit = 2684354560
PriceBump = 10
AccountSlots = 16
GlobalSlots = 1024
AccountQueue = 64
GlobalQueue = 1024
Lifetime = 10800000000000
[Eth.BlobPool]
Datadir = "blobpool"
Datacap = 2684354560
PriceBump = 100
[Eth.GPO]
Blocks = 20
Percentile = 60
MaxHeaderHistory = 1024
MaxBlockHistory = 2000000000
MaxPrice = 500000000000
IgnorePrice = 2
[Node]
DataDir = "node2"
IPCPath = "geth.ipc"
HTTPHost = ""
HTTPPort = 8545
HTTPVirtualHosts = ["localhost"]
HTTPModules = ["net", "web3", "eth"]
AuthAddr = "localhost"
AuthPort = 8552
AuthVirtualHosts = ["localhost"]
WSHost = ""
WSPort = 8546
WSModules = ["net", "web3", "eth"]
GraphQLVirtualHosts = ["localhost"]
BatchRequestLimit = 1000
BatchResponseMaxSize = 25000000
[Node.P2P]
MaxPeers = 50
NoDiscovery = false
DiscoveryV4 = true
BootstrapNodes = ["enode://736e6c1b287d08e0508cec7ef0bbcf307dd1ce96018c5fc368b2f20c30231135877d79f286c08c8f3ed53122064e9b972ccb58e789572eca5281597190cd2258@127.0.0.1:0?discport=30305"]
BootstrapNodesV5 = ["enode://736e6c1b287d08e0508cec7ef0bbcf307dd1ce96018c5fc368b2f20c30231135877d79f286c08c8f3ed53122064e9b972ccb58e789572eca5281597190cd2258@127.0.0.1:0?discport=30305"]
StaticNodes = []
TrustedNodes = []
ListenAddr = ":30307"
DiscAddr = ""
[Node.HTTPTimeouts]
ReadTimeout = 30000000000
ReadHeaderTimeout = 30000000000
WriteTimeout = 30000000000
IdleTimeout = 120000000000
[Metrics]
HTTP = "127.0.0.1"
Port = 6060
InfluxDBDatabase = "geth"
InfluxDBUsername = "test"
InfluxDBPassword = "test"
InfluxDBTags = "host=localhost"
InfluxDBToken = "test"
InfluxDBBucket = "geth"
InfluxDBOrganization = "geth"
Backtrace
INFO [10-24|20:27:14.910] Starting Geth on Ethereum mainnet...
INFO [10-24|20:27:14.911] Bumping default cache on mainnet provided=1024 updated=4096
INFO [10-24|20:27:14.912] Maximum peer count ETH=50 total=50
INFO [10-24|20:27:14.914] Smartcard socket not found, disabling err="stat /run/pcscd/pcscd.comm: no such file or directory"
INFO [10-24|20:27:14.920] Set global gas cap cap=50,000,000
INFO [10-24|20:27:14.920] Initializing the KZG library backend=gokzg
INFO [10-24|20:27:14.958] Allocated trie memory caches clean=614.00MiB dirty=1024.00MiB
INFO [10-24|20:27:14.958] Using pebble as the backing database
INFO [10-24|20:27:14.958] Allocated cache and file handles database=/root/test/fuzznode/node2/geth/chaindata cache=2.00GiB handles=524,288
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x28 pc=0xc70911]
goroutine 1 [running]:
github.com/ethereum/go-ethereum/core/rawdb.NewFreezer({0xc001266300, 0x29}, {0x195bf96, 0x11}, 0x0, 0x77359400, 0xc000693e90)
github.com/ethereum/go-ethereum/core/rawdb/freezer.go:99 +0x231
github.com/ethereum/go-ethereum/core/rawdb.NewChainFreezer(...)
github.com/ethereum/go-ethereum/core/rawdb/freezer.go:82
github.com/ethereum/go-ethereum/core/rawdb.newChainFreezer({0xc001266300?, 0x23?}, {0x195bf96?, 0x10?}, 0x10?)
github.com/ethereum/go-ethereum/core/rawdb/chain_freezer.go:56 +0x2f
github.com/ethereum/go-ethereum/core/rawdb.NewDatabaseWithFreezer({0x7f53ad68efa0, 0xc0003217d0}, {0xc001266120, 0x23}, {0x195bf96, 0x11}, 0x0)
github.com/ethereum/go-ethereum/core/rawdb/database.go:203 +0x85
github.com/ethereum/go-ethereum/core/rawdb.Open({{0x0, 0x0}, {0xc0012660f0, 0x28}, {0xc001266120, 0x23}, {0x195bf96, 0x11}, 0x800, 0x80000, ...})
github.com/ethereum/go-ethereum/core/rawdb/database.go:414 +0xbe
github.com/ethereum/go-ethereum/node.(*Node).OpenDatabaseWithFreezer(0xc0003382a0, {0x1951146, 0x9}, 0x800, 0x80000, {0xc000577601, 0x4}, {0x195bf96, 0x11}, 0x0)
github.com/ethereum/go-ethereum/node/node.go:760 +0x338
github.com/ethereum/go-ethereum/eth.New(0xc0003382a0, 0xc0001dc708)
github.com/ethereum/go-ethereum/eth/backend.go:132 +0x505
github.com/ethereum/go-ethereum/cmd/utils.RegisterEthService(0xc0003382a0, 0x1958a2e?)
github.com/ethereum/go-ethereum/cmd/utils/flags.go:1863 +0x25
main.makeFullNode(0xc0007cc040)
github.com/ethereum/go-ethereum/cmd/geth/config.go:180 +0x212
main.geth(0xc0007cc040)
github.com/ethereum/go-ethereum/cmd/geth/main.go:340 +0x125
github.com/urfave/cli/v2.(*Command).Run(0xc0006906e0, 0xc0007cc040, {0xc000290330, 0x3, 0x3})
github.com/urfave/cli/[email protected]/command.go:274 +0x93f
github.com/urfave/cli/v2.(*App).RunContext(0xc000016b40, {0x1ebe4b8, 0x2c51580}, {0xc000290330, 0x3, 0x3})
github.com/urfave/cli/[email protected]/app.go:332 +0x566
github.com/urfave/cli/v2.(*App).Run(...)
github.com/urfave/cli/[email protected]/app.go:309
main.main()
github.com/ethereum/go-ethereum/cmd/geth/main.go:270 +0x45
When submitting logs: please submit them as text and not screenshots.