* test block tree req
* tree improvement
* use the right data
* block tree blocked by children func
* rem file
* imports
* add ctx
* imports
* mock
* check expired context
* added block root
* gazelle
* sace
* make fixes
* change condition
* comment
* fixed up a few var names for clarity
* added test for isDescendant
* chain split reorg test
* interface for atts service
* comprehensive reorg regression test added
* space
* all tests pass
* target handler
* ci lint
* Update beacon-chain/sync/receive_block.go
Co-Authored-By: rauljordan <raul@prysmaticlabs.com>
* use att targets
* risky head request
* timing lmd
* fixed ancestor cache hits
* tests pass
* comment on func
* advance state transition
* advance N empty state transitions
* imports
* imports
* use risky head state
* use validator registry
* revert timing
* imports
* use committee cache in UpdateLatestAttestation
* fmt
* gaz
* fixed existing tests
* verify cache miss works
* gaz
* added test for committee hit and update attestation target
* verify cache miss works
* Update beacon-chain/core/helpers/committee.go
Co-Authored-By: terenc3t <terence@prysmaticlabs.com>
* rm declaring err
* add feature flag
* fork choice vote count to use cached ancestor
* comments
* fmt
* spelling and grammer
* no extra space
* renamed vars & added a test for cache miss
* lint
* add cache hit test case : )
* gaz
* Remove Enableblock, it was a copy/paste typo
* refactor cached ancestor blk getter into its own function
* Begin adding Deposit Index to beacon state
* Move deposit index increment to ProcessDeposit
* Fix initial deposits bug
* Fix bug in RPC
* More bug fixes
* Fix RPC bug, ensure deposits are processed in the right order
* Fix tests
* Fix merge
* Attempt to fix pruning deposits on regular sync
* Fix pending deposits on node restart
* Fix test
* Fix tests properly
* Gofmt
* Remove unneeded logs
* Fix build
* update protos
* Revert "Use DB to Fetch Justified Block (#2172)"
This reverts commit 60c254d818.
* use justified root and previous justified root across the repo
* change attester server to use state justified root
* remove commented code
* fix build issues
* fix test
* fix all tests
* fix merge issues
* headRoot is a better name
* yay merged with master
* fixed attester server returning incorrect attestation field values
* revert stupid mock changes
* fixed and updated all the tests
* uncomment
* head start should handle skip blocks
* Raul's feedback
* Add initial test
* chkpt
* add failing test
* add span to historical state lookup
* use db.HighestBlockSlot()
* fix comment
* update comment
* i wrote a test like a good programmer.
* add test back
* add assertion and unskip test, something new failing tho
* trying to fix test
* remove -1, not sure if i need it yet
* Revert "remove -1, not sure if i need it yet"
This reverts commit 2cfcbb8108b28bb3d7135a993d9053150d5f1e6e.
* save historical state on every save state
* fix hsitorical states
* set historical state in initialize state
* change to a bool
* fix error with empty retrieval of states
* Add missing import
* fix test
* lock in receive block
* remove state generator
* Revert "lock in receive block"
This reverts commit 151b10829d70b2dad3055a8db36d0e1269a853f2.
* Fix Initial Sync Not Processing Canonical Block to Produce Canonical State (#2152)
* fix init sync
* fatal if highest observed root does not match
* proto fields
* Update beacon-chain/sync/initial-sync/service.go
* confirm canonical state root
* fix most tests
* failing test
* fix PR tests
* lint
* no simbackend changes
* logf revert
* add todo
* fix off by one
* fix test with deleted property
* merge #2157
* passing tests :)
* refactor initial sync to prevent reorg infinite loops
* lint
* fixed build
* passing tests
* tests passing
* terence suggestion
* new attempt
* clean up and refactor sync service
* complete the new initial sync logic
* revert head
* init sync working
* config for blockchain receive block
* all works
* builds
* fix a few more tests
* init sync tests pass
* revert scripts
* revert accounts changes
* lint
* lint2
* travis lint
* fix build
* fix single use argument
* any peer
* imports spacing
* imports
* ready for a rolling restart
* add todo
* fork choice in blocks when exiting sync
* readd finalized state root to requests
* successful build
* revert blockchain config
* old config reversion
* initial sync tests pass
* initial sync full test works
* lint
* use the new block processing api
* new proto defs
* init sync functions again
* remove sync polling
* tests fixed
* fixed catching up with chain
* tests pass
* spacing
* lint
* goimports
* add changes
* add lock and conditional to prevent multiple goroutines
* make reg sync synchronous
* add
* fixed the parent block issue
* fix errors in chain service
* tests pass
* check nil block
* typo
* fix nil state
* merge & conflicts
* revert synchronus reg sync
* add more spans to state db
* fix lint
* lint