• Martin Holst Swende's avatar
    core,les: headerchain import in batches (#21471) · 40b6ccf3
    Martin Holst Swende authored
    * core: add test for headerchain inserts
    
    * core, light: write headerchains in batches
    
    * core: change to one callback per batch of inserted headers + review concerns
    
    * core: error-check on batch write
    
    * core: unexport writeHeaders
    
    * core: remove callback parameter in InsertHeaderChain
    
    The semantics of InsertHeaderChain are now much simpler: it is now an
    all-or-nothing operation. The new WriteStatus return value allows
    callers to check for the canonicality of the insertion. This change
    simplifies use of HeaderChain in package les, where the callback was
    previously used to post chain events.
    
    * core: skip some hashing when writing headers
    
    * core: less hashing in header validation
    
    * core: fix headerchain flaw regarding blacklisted hashes
    Co-authored-by: 's avatarFelix Lange <fjl@twurst.com>
    40b6ccf3
Name
Last commit
Last update
.github Loading commit data...
accounts Loading commit data...
build Loading commit data...
cmd Loading commit data...
common Loading commit data...
consensus Loading commit data...
console Loading commit data...
contracts/checkpointoracle Loading commit data...
core Loading commit data...
crypto Loading commit data...
docs/audits Loading commit data...
eth Loading commit data...
ethclient Loading commit data...
ethdb Loading commit data...
ethstats Loading commit data...
event Loading commit data...
graphql Loading commit data...
internal Loading commit data...
les Loading commit data...
light Loading commit data...
log Loading commit data...
metrics Loading commit data...
miner Loading commit data...
mobile Loading commit data...
node Loading commit data...
p2p Loading commit data...
params Loading commit data...
rlp Loading commit data...
rpc Loading commit data...
signer Loading commit data...
swarm Loading commit data...
tests Loading commit data...
trie Loading commit data...
.dockerignore Loading commit data...
.gitattributes Loading commit data...
.gitignore Loading commit data...
.gitmodules Loading commit data...
.golangci.yml Loading commit data...
.mailmap Loading commit data...
.travis.yml Loading commit data...
AUTHORS Loading commit data...
COPYING Loading commit data...
COPYING.LESSER Loading commit data...
Dockerfile Loading commit data...
Dockerfile.alltools Loading commit data...
Makefile Loading commit data...
README.md Loading commit data...
SECURITY.md Loading commit data...
appveyor.yml Loading commit data...
circle.yml Loading commit data...
go.mod Loading commit data...
go.sum Loading commit data...
interfaces.go Loading commit data...
oss-fuzz.sh Loading commit data...