core, eth, les: implement unclean-shutdown marker (#21893)
This PR implements unclean shutdown marker. Every time geth boots, it adds a timestamp to a list of timestamps in the database. This list is capped at 10. At a clean shutdown, the timestamp is removed again. Thus, when geth exits unclean, the marker remains, and at boot up we show the most recent unclean shutdowns to the user, which makes it easier to diagnose root-causes to certain problems. Co-authored-by: Nagy Salem <me@muhnagy.com>
This commit is contained in:
committed by
GitHub
parent
c49aae9870
commit
4d48980e74
@ -27,8 +27,8 @@ import (
|
||||
|
||||
// The fields below define the low level database schema prefixing.
|
||||
var (
|
||||
// databaseVerisionKey tracks the current database version.
|
||||
databaseVerisionKey = []byte("DatabaseVersion")
|
||||
// databaseVersionKey tracks the current database version.
|
||||
databaseVersionKey = []byte("DatabaseVersion")
|
||||
|
||||
// headHeaderKey tracks the latest known header's hash.
|
||||
headHeaderKey = []byte("LastHeader")
|
||||
@ -81,6 +81,8 @@ var (
|
||||
preimagePrefix = []byte("secure-key-") // preimagePrefix + hash -> preimage
|
||||
configPrefix = []byte("ethereum-config-") // config prefix for the db
|
||||
|
||||
uncleanShutdownKey = []byte("unclean-shutdown") // config prefix for the db
|
||||
|
||||
// Chain index prefixes (use `i` + single byte to avoid mixing data types).
|
||||
BloomBitsIndexPrefix = []byte("iB") // BloomBitsIndexPrefix is the data table of a chain indexer to track its progress
|
||||
|
||||
|
Reference in New Issue
Block a user