* Only insert hard-coded tips if both DB and files recovery failed
* Prevent deadlock
* Report some efficiency numbers
* Count properly unrequested bodies
* Initialise allRequests
* Increase timeout
* Fixes to scheduling
* Small fix
* Simplified scheduling
* Remove separate bodyLoop goroutine
* Update from DB at the beginnig of block bodies forward
* Timeout for repeating the request cycle
* Fix timeout
* Fix
* Increase timeout
* Increase timeout
* Try to make flow if possible
* Fix flow
* Lower timeout
* timeout for each blockNum
* Adjustable timeout
* Better log timing
* Track peers
* copy peerID
* fix scheduling
* Too much logging
* Print delivery speed
* Print committed blocks
* Fix race
* Sentry to only reset back-off timer when response to a request is received
* Print bytes/sec and wasted traffic
* Fix bandwidth accounting
* Less logging
* not to wake up on deliveries
* Spam every second
* Print peer map
* Fix npe, print requests
* Timestamps
* Improved logging
* Penalty for peers
* Log penalties only when disconnecting
* Try with smaller window
* window parameter
* Dealing with partially delivered requests
* Init bodyReq
* Fix array index
* More fix for NPE
* More NPE checks
* Print out body progress and header progress
* Fix ending condition
* Bring back waking up and penalties
* Fix duplicate tip
* Duplicate segment
* Fix lint
* Fix lint
* fix lint
* Fix lint
* Hard coded headers in the source files
* Fix lint
* Replace hix-sized header serialisation with rlp (to support clique)
* Remove anchor records from the files
* Fixeds for DB recovery
* Fix compilation
* Fix compile errors
* Fix formatting
* Fix lint
* Fix comments
* Remove headerLoop
* Properly terminate body download
* Support for StatusData p2p proto
* Fix forkid test
* Fix test
* Fix lint
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
* move locking to the hd object itself, create ready channel
* Fix lint
* More integration
* Fix lint
* Connect to processing
* Set hd.files at recovery
* Serialise processSegment
* Fix lint
* Not prepend filesDir
* Write to the database
* Fix lint
* Set up genesis block
* Fix hard coded tips
* Fix chainbreak false alarm
* Recover from DB
* Skip non-header records
* Not initialise if recovered from DB
* Fix lint
* Initial work on state shards
* Fix compile errors
* Intermediate
* Implement dispatcher
* Implemented sharded reader
* No cache
* Print comms
* No prepopulation
* Print dispatcher activity
* Print more
* Print errors
* Fix dispatcher
* Remove logging
* Dispatcher to enforce initial barrier
* Don't print that much
* Turn off cache pre-seeting for state sharding
* Artificial latency, fixed number of blocks to execute
* Fix
* Splitting sentry and downloader - the beginning
* A bit more
* More on sentry
* More gRPC
* Sentry and downloader separated
* Update binding for stable version of grpc
* Better bufferSize flag
* Fix lint
* Send pelanties
* Fix lint
* Remove hard-coded tips on connect
* Tidy the logs a bit
* Deal with hardTips on Recovery
* Print hard tips
* Hide empty anchors
* Request headers after receiving a message
* Better waking up
* Print hard-coded block numbers
* Print outgoing requests
* Debug logging
* In the middle protection
* Sentry not to lose peers when core disconnects
* Add headers persistence
* Print flushBuffer
* Fix indexing problem
* Not skip hard-coded headers if the files are empty
* Fix lint
* print anchor state after init
* Properly construct file names
* Add check sub-command
* Fix lint
* Fix lint
* Fix lint
* Print more info when recovering
* Fix recovering
* Fix recovery
* Add anchors also as tips
* 2-level priority queue for tips
* Initialise tipQueue in anchor
* update maxTipHeight
* fix type
* Add anchors to the anchorQueue and rebuild anchorQueue on deletion
* Fix NPE
* fix recovery
* User buffersize, add hard coded headers to buffer
* Reinit anchorQueue
* Schedule requests after recovery
* No fix
* Remove duplicates
* Report duplicate headers
* Log buffer additions
* Fix for duplicate headers
* Try to fix duplicate headers again
* remove TODO comment
* Use LLRB instead of heap for anchors
* Print reserveTip info
* Correctly replace anchors in the tree
* Remove excessive logging
* Print tips attached to the anchor
* Print tips better
* limitTips instead of reserveTip
* Print forked headers
* Use pointers in llrb
* Print tipStretch
* Print limitTips
* Mininise AnchorItem
* Put anchors into the tree
* Fix totalDiff calculation, but is it needed?
* Remove totalDifficulty from anchors
* CheckInitiation
* Fix tests
* Fix lint, print more at check initiation
* Better output for hard-coded anchors
* Print hard-coded anchors better
* Prioritise anchors with short stretches
* Prioritise by chainSize
* Use linked list instead of heap for requestQueue
* Fix problem of no requests
* Push front
* Fix lint
* Not verify PoW for too far in the past and future
* Fix Calculation of totalDifficulty when Connect
* Fix hard tips
* Another fix for tips
* Process BlockHeadersMsg
* Print invalidations
* Print reason for parent-child mismatch
* Fix off by one error
* Fix ExtendDown
* Replace tipLimiter with an LRU cache
* Retrieve 256 headers at a time
* Hard coding of tips, process new block hashes
* extract headers
* Write hard-coded headers into a file
* Add total difficulty
* Insert hard coded headers
* Log i
* Initiate download from hard-coded anchors
* Print the state of anchors
* Add hard-coded headers as tips
* Spare the peers
* Refine LRU caching of tips
* Print length of anchor trees
* Limit requests to 192 headers
* range error fix
* Print better, retain at least one tip in the LRU cache
* Skip duplicate line ends
* Throttle requests, display peer name
* Back off, intermediate tip queue
* Print block header timestamp
* Better logging
* Log less
* More logging of evictions
* Fix queue push
* Fix queue pop
* Exclude duplicate tips
* Fix tips logging
* Fix moving
* Add port flag
* Check headers
* Print extra
* Add mixDigest to serialisation
* Fix difficulty in hard-coded headers
* Avoid duplicate header requests
* Update peer characteristics on NewBlockMsg
* Remove backoff when peer responds
* Fix tests
* Fix lint
* Fix lint