-
Notifications
You must be signed in to change notification settings - Fork 172
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
consensus: Verify hardened checkpoints on start up #2087
consensus: Verify hardened checkpoints on start up #2087
Conversation
This adds a routine that compares the block index entries with the hardened checkpoints when a node starts. It provides user feedback for some forks and database corruption.
32d485c
to
b5190e8
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
utACK
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
utACK, although I think that the shutdown should be left to the init.
On a related note, the GUI doesn't handle failed initializations properly. For example while #1978 did fix the segfault in #1872 any other init error(for example gridcoinresearch -testnet -paytxfee=dog
) will still cause the wallet to segfault.
I agree @div72, but I think we should fix that in a separate PR. |
Added - doc: Invite users to donate to Gridcoin Foundation gridcoin-community#1997 (@smoe) - rpc: Add "getburnreport" RPC function gridcoin-community#2049 (@cyrossignol) - doc: Add undocumented "-showorphans" GUI option to help text gridcoin-community#2058 (@cyrossignol) - beacon: Cull beacon db memory (passivation) gridcoin-community#2069 (@jamescowens) - gui: Avoid refreshing GUI researcher status while out-of-sync gridcoin-community#2068 (@cyrossignol) - consensus: Reimplement checkpoint-based spam protection gridcoin-community#2084 (@cyrossignol) - consensus: Verify hardened checkpoints on start up gridcoin-community#2087 (@cyrossignol) Changed - gui: Clarify overview page "stake" field gridcoin-community#2056 (@cyrossignol) - doc: Update Copyright headers gridcoin-community#2059 (@barton2526) - gui: Update Qt Linguist localization files gridcoin-community#2063 (@cyrossignol) - build: update dependencies gridcoin-community#2064 (@barton2526) - net: Reduce default connection limit back to 125 gridcoin-community#2066 (@cyrossignol) - build: openssl patch gridcoin-community#2074 (@barton2526) - translation: Translate /src/qt/locale/bitcoin_en.ts in pt_PT gridcoin-community#2083 (@DjMVeiga) - log: Adjust logging gridcoin-community#2076 (@jamescowens) - gui: Change scraper tab to Inconsolata monospace font gridcoin-community#2085 (@jamescowens) - researcher: Change beacon deferment fix to reference nActiveBeforeSB gridcoin-community#2092 (@jamescowens) Removed - net: Clean up mandatory protocol version transition gridcoin-community#2080 (@cyrossignol) - refactor: Remove LessVerbose() function gridcoin-community#2089 (@cyrossignol) Fixed - beacon: Fix a subtle error in renewal chain walker gridcoin-community#2054 (@jamescowens) - researcher: Fix "malformed CPID" status for some pool projects gridcoin-community#2052 (@cyrossignol) - lint: Misc Typos gridcoin-community#2060 (@barton2526) - lint: remove identified duplicate includes gridcoin-community#2061 (@barton2526) - gui: Fix splash screen block height progress gridcoin-community#2057 (@cyrossignol) - gui: Fix garbage placeholders in some tx notification localizations gridcoin-community#2070 (@cyrossignol) - build: Patch libzip to fix mingw compile regression for mingw 9.2+ gridcoin-community#2082 (@jamescowens) - gui: Fix shutdown response for failed core init gridcoin-community#2088 (@cyrossignol) - researcher: Fix deferment of beacon renewal in superblock window gridcoin-community#2090 (@cyrossignol) - gui: Fix typo in beacon status refresh gridcoin-community#2091 (@div72)
Added - doc: Invite users to donate to Gridcoin Foundation gridcoin-community#1997 (@smoe) - rpc: Add "getburnreport" RPC function gridcoin-community#2049 (@cyrossignol) - gui: Add stats export reminder to beacon wizard auth page gridcoin-community#2050 (@cyrossignol) - doc: Add undocumented "-showorphans" GUI option to help text gridcoin-community#2058 (@cyrossignol) - beacon: Cull beacon db memory (passivation) gridcoin-community#2069 (@jamescowens) - gui: Avoid refreshing GUI researcher status while out-of-sync gridcoin-community#2068 (@cyrossignol) - consensus: Reimplement checkpoint-based spam protection gridcoin-community#2084 (@cyrossignol) - consensus: Verify hardened checkpoints on start up gridcoin-community#2087 (@cyrossignol) Changed - test: autogenerate data headers gridcoin-community#2030 (@div72) - doc: Change copyright years to 2021 gridcoin-community#2042 (@caraka) - gui: Clarify overview page "stake" field gridcoin-community#2056 (@cyrossignol) - doc: Update Copyright headers gridcoin-community#2059 (@barton2526) - gui: Update Qt Linguist localization files gridcoin-community#2063 (@cyrossignol) - build: update dependencies gridcoin-community#2064 (@barton2526) - net: Reduce default connection limit back to 125 gridcoin-community#2066 (@cyrossignol) - build: openssl patch gridcoin-community#2074 (@barton2526) - translation: Translate /src/qt/locale/bitcoin_en.ts in pt_PT gridcoin-community#2083 (@DjMVeiga) - log: Adjust logging gridcoin-community#2076 (@jamescowens) - gui: Change scraper tab to Inconsolata monospace font gridcoin-community#2085 (@jamescowens) - researcher: Change beacon deferment fix to reference nActiveBeforeSB gridcoin-community#2092 (@jamescowens) Removed - net: Clean up mandatory protocol version transition gridcoin-community#2080 (@cyrossignol) - refactor: Remove LessVerbose() function gridcoin-community#2089 (@cyrossignol) Fixed - build: Fix depends cross-compilation for macOS gridcoin-community#2038 (@cyrossignol) - build: Deal with Qt depends .qmake.stash file gridcoin-community#2048 (@cyrossignol) - beacon: Fix a subtle error in renewal chain walker gridcoin-community#2054 (@jamescowens) - researcher: Fix "malformed CPID" status for some pool projects gridcoin-community#2052 (@cyrossignol) - lint: Misc Typos gridcoin-community#2060 (@barton2526) - lint: remove identified duplicate includes gridcoin-community#2061 (@barton2526) - gui: Fix splash screen block height progress gridcoin-community#2057 (@cyrossignol) - gui: Fix garbage placeholders in some tx notification localizations gridcoin-community#2070 (@cyrossignol) - build: Patch libzip to fix mingw compile regression for mingw 9.2+ gridcoin-community#2082 (@jamescowens) - gui: Fix shutdown response for failed core init gridcoin-community#2088 (@cyrossignol) - researcher: Fix deferment of beacon renewal in superblock window gridcoin-community#2090 (@cyrossignol) - gui: Fix typo in beacon status refresh gridcoin-community#2091 (@div72)
This adds a routine that compares the block index entries with the hardened checkpoints when a node starts. It provides user feedback for some forks and database corruption. A node will exit in case of a checkpoint mismatch.