Raul Jordan
233171d17c
[Service Config Revamp] - Sync Service With Functional Options ( #9859 )
...
* sync config refactor
* rem
* rem
* testing
* gaz
* next
* fuzz
* build
* fuzz
* rev
* log
* cfg
2021-11-05 19:08:58 +00:00
terence tsao
c21e43e4c5
Refactor: move functions beacon-chain/core/time
-> time/slots
( #9719 )
...
* Move necessary functions beacon-chain/core/time -> time/slots
* Fix fuzz
* Fix build
* Update slot_epoch.go
2021-10-01 15:17:57 -05:00
terence tsao
8219af46e4
Move slot epoch from core to time pkg ( #9714 )
...
* Move slot epoch from core to time pkg
* Fix fuzz
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2021-09-30 19:00:14 +00:00
Raul Jordan
29513c804c
Create Encoding Bytesutil ( #9658 )
...
* bytesutil
* gaz
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2021-09-23 15:23:37 +00:00
Raul Jordan
f3d6dbcc1e
Move Shared/Params Into Config/Params ( #9642 )
...
* config params into pkg
* gaz
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2021-09-21 19:59:25 +00:00
Raul Jordan
11a1f681e0
Move Shared Packages Into Async/ ( #9620 )
...
* async packages
* change pkg
* build
* working
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2021-09-18 17:26:11 +00:00
terence tsao
3e71997290
Create time Package for Shared/timeutil, mclock and slotutil ( #9594 )
...
* add time pkg
* Go fmt
2021-09-15 00:09:04 +00:00
Nishant Das
2faaafb159
add remaining rpc methods ( #9551 )
2021-09-09 10:12:49 -05:00
Nishant Das
ee28dc3d4f
Add in Fork Digest For Subscribers ( #9538 )
...
* add in digest
* radek's review
* raul's review
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
2021-09-07 16:58:24 +00:00
Preston Van Loon
4beb352e6f
Move Slot and Epoch functions from helpers to core pkg ( #9519 )
...
* Move Slot and Epoch functions from helpers to core
* limited viz
* goimports
* fix fuzz build
* fix fuzz build
* fix
* fix
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2021-09-03 20:10:31 +00:00
Raul Jordan
9145310647
Eliminate Proto V2 Namespace ( #9297 )
...
* get rid of v2 in prysm codebase
* replace block2
* builds
* terence comments
* gazelle
2021-07-28 21:23:44 +00:00
Raul Jordan
2d10bcf179
Move State Protos Into V2 Namespace ( #9257 )
...
* move state protos
* regen ssz
* edit v1 code
* fix imports
* building
* beacon chain builds
* validator and shared builds
* fuzz builds
* changes
* spectest builds
* tools build
* remove import cycle
* generate ssz
* pcli
* gaz
* kafka
* gaz
2021-07-23 08:07:40 -05:00
Nishant Das
caf9bdbc6f
Use Block Interface Across Prysm ( #8918 )
...
* commit initial work
* checkpoint current work
* gaz
* checkpoint
* req/resp changes
* initial-sync
* finally works
* fix error
* fix bugs
* fix issue
* fix issues
* fix refs
* tests
* more text fixes
* more text fixes
* more text fixes
* fix tests
* fix tests
* tests
* finally fix builds
* finally
* comments
* fix fuzz
* share common library
* fix
* fix
* add in more defensive nil checks
* add in more defensive nil checks
* imports
* Apply suggestions from code review
Co-authored-by: terence tsao <terence@prysmaticlabs.com>
* Apply suggestions from code review
Co-authored-by: terence tsao <terence@prysmaticlabs.com>
* Update shared/interfaces/block_interface.go
Co-authored-by: terence tsao <terence@prysmaticlabs.com>
* Update shared/interfaces/block_wrapper.go
Co-authored-by: terence tsao <terence@prysmaticlabs.com>
* Update shared/interfaces/block_interface.go
Co-authored-by: terence tsao <terence@prysmaticlabs.com>
* imports
* fix bad changes
* fix
* terence's review
* terence's review
* fmt
* Update beacon-chain/rpc/beacon/blocks.go
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
* fix tests
* fix
* fix all tests
Co-authored-by: terence tsao <terence@prysmaticlabs.com>
Co-authored-by: Radosław Kapka <rkapka@wp.pl>
2021-05-26 16:19:54 +00:00
Nishant Das
35dc8c31fa
Add in Context For Req/Resp ( #8895 )
...
* Add in context
* use better function signatures
* add in chainservice
* fix rpc requests
* add in test
* fix tests
* add in comments
* Update beacon-chain/sync/rpc_chunked_response.go
Co-authored-by: terence tsao <terence@prysmaticlabs.com>
* Update beacon-chain/sync/rpc_send_request.go
Co-authored-by: terence tsao <terence@prysmaticlabs.com>
* rename files
* fmt
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
Co-authored-by: terence tsao <terence@prysmaticlabs.com>
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2021-05-17 19:25:59 +00:00
Nishant Das
e6a1d5b1b9
Refactor RPC Topic Construction ( #8892 )
...
* check in changes
* goimports
* export it
* add new rpc type
2021-05-15 08:58:56 +08:00
kevlu93
eca67cec4c
Embed Config Pattern for Sync Services ( #8636 )
...
Co-authored-by: terence tsao <terence@prysmaticlabs.com>
2021-03-21 19:07:42 +00:00
Raul Jordan
090fbbf18c
Add Goland Standard "cmd" Pattern for Beacon-Chain Binaries ( #8540 )
...
* beacon chain cmd pattern
* imports spacing
* more import fix
* edit build file
* e2e viz
* amend e2e
2021-03-02 13:36:03 -06:00
Nishant Das
0625a6906c
Add Better Peer Pruning ( #8501 )
...
* add better pruning
* add test
* gaz
* victor's review
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2021-02-24 18:40:06 +00:00
Victor Farazdagi
a069738c20
ETH2 Types: Slot ( #8408 )
...
* update shared/params
* update eth2-types deps
* update protobufs
* update shared/*
* fix testutil/state
* update beacon-chain/state
* update beacon-chain/db
* update tests
* fix test
* update beacon-chain/core
* update beacon-chain/blockchain
* update beacon-chain/cache
* beacon-chain/forkchoice
* update beacon-chain/operations
* update beacon-chain/p2p
* update beacon-chain/rpc
* update sync/initial-sync
* update deps
* update deps
* go fmt
* update beacon-chain/sync
* update endtoend/
* bazel build //beacon-chain - works w/o issues
* update slasher code
* udpate tools/
* update validator/
* update fastssz
* fix build
* fix test building
* update tests
* update ethereumapis deps
* fix tests
* update state/stategen
* fix build
* fix test
* add FarFutureSlot
* go imports
* Radek's suggestions
* Ivan's suggestions
* type conversions
* Nishant's suggestions
* add more tests to rpc_send_request
* fix test
* clean up
* fix conflicts
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
Co-authored-by: nisdas <nishdas93@gmail.com>
2021-02-16 07:45:34 +00:00
Victor Farazdagi
a8e501b3cf
ETH2 Types: Epoch ( #8373 )
...
* update deps
* update deps
* update protos/*
* update deps
* reset protos
* update protos
* update shared/params/config
* update protos
* update /shared
* update shared/slotutil and shared/testutil
* update beacon-chain/core/helpers
* updates beacon-chain/state
* update beacon-chain/forkchoice
* update beacon-chain/blockchain
* update beacon-chain/cache
* update beacon-chain/core
* update beacon-chain/db
* update beacon-chain/node
* update beacon-chain/p2p
* update beacon-chain/rpc
* update beacon-chain/sync
* go mod tidy
* make sure that beacon-chain build suceeds
* go fmt
* update e2e tests
* update slasher
* remove redundant alias
* update validator
* gazelle
* fix build errors in unit tests
* go fmt
* update deps
* update fuzz/BUILD.bazel
* fix unit tests
* more unit test fixes
* fix blockchain UTs
* more unit test fixes
2021-02-09 10:05:22 +00:00
Nishant Das
ce397ce797
Prune Excess Peers Better ( #8260 )
...
* add method
* add changes
* formatting
* choose
* fix waitgroup
* add
* add debug logs
* gaz
* make it better
* fix
* godoc
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2021-01-14 21:28:20 +00:00
Steven Allen
2428880058
Update go-libp2p to 0.12.0 ( #8015 )
...
* Update go-libp2p to 0.12.0
go-libp2p 0.12.0 made some significant changes to the stream interfaces around
stream closing:
* Close now closes in both directions and frees the stream. However, unlike
FullClose did, it doesn't _wait_ for the remote peer to respond with an EOF.
* To close for writing, call CloseWrite (like one would on a TCP connection, etc.).
This patch:
* Replaces calls to FullClose with Close where appropriate.
* Replaces calls to Close with CloseWrite where appropriate.
* Removes redundant Close calls.
* Calls Reset to where appropriate to indicate that the request/response was
aborted. Unlike Close, this will not flush and will not cause the remote peer
to read an EOF. Instead, the remote peer will read an ErrReset error.
* Ensures we always either close or reset streams. Send wasn't closing the
stream on some error paths.
* Now that stream closing is async, we explicitly wait for a response when
"hanging up" on a peer (so we don't hang up before they receive our
response/goodbye message).
* update bazel
* Gazelle
* revert unintentional bazel workspace change
* appease an overzealous linter
* update to latest
* Refactor encoder
* gazelle
* Gazelle
Co-authored-by: Preston Van Loon <preston@prysmaticlabs.com>
Co-authored-by: Nishant Das <nishdas93@gmail.com>
Co-authored-by: Raul Jordan <raul@prysmaticlabs.com>
2020-12-14 17:22:25 +00:00
terence tsao
2172cd60a6
Update sync loggings ( #7914 )
2020-11-22 14:31:55 -06:00
Victor Farazdagi
095c4d5dd5
Peer status peer scorer ( #7480 )
...
* define and enforce minimum scorer interface
* better decoupling of multiple scorers in service
* removes redundant weight
* adds peer_status scorer
* minir re-arrangement
* rely on scorer in peer status service
* gazelle
* updates rpc_status
* fix build
* better interface verifying
* remove unnecessary locks
* mark todo
* simplify service
* remove redundant references
* avoid passing contexts
* remove unused context
* refactor errors to p2p package
* refactor goodbye codes into p2p
* simplify status api
* remove isbad method from peers
* update scoring service
* introduce validation error
* gazelle
* add score
* restore isbad method
* resolve dep cycle
* gazelle
* peer status scorer: test score calculation
* bad responses scorer: bad peer score
* remove redundant type checks
* pass nil config
* add rounding
* test IsBadPeer
* test bad peers list
* more tests
* check validation error on non-existent peer
* max peer slot -> highest peer slot
* remove redundant comment
* combine
* combine
* introduce var
* fix tests
* remove redundant update
* minor fix
* Nishant's suggestion
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2020-11-18 15:51:42 +00:00
Victor Farazdagi
7735a083b2
Extract common types from sync ( #7843 )
...
* extract common types from sync
* fix tests
* simplify
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2020-11-18 04:17:42 +00:00
Nishant Das
d281ef9c56
Clean Up GoodByes ( #7790 )
...
* clean up
* cleanup
* fix
* fix tests
* change
* deepsource
* fix test
2020-11-13 12:58:13 +00:00
Victor Farazdagi
a005c77b3f
Update error usage patterns to go1.13+ ( #7529 )
...
* rely on errors.Is
* wrap errors
2020-10-14 17:39:52 +00:00
Nishant Das
3b5ef50733
Fix Finalized Epoch Checks ( #7364 )
...
* fix up epoch checks
* build
* comp tests
* preston's comment
2020-09-30 08:25:25 +08:00
Nishant Das
719e99ffd9
Replace Roughtime With Timeutils Across Prysm ( #7301 )
...
* remove roughtime
* change all references
* rename
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2020-09-22 19:49:58 +08:00
Victor Farazdagi
5c9830f0c3
More conservative selection of non-finalized peers ( #7086 )
...
* more conservative selection of non-finalized peers
* Merge refs/heads/master into init-sync-non-finalized-loop
* Nishant's suggestion on possible overflow
* Merge branch 'init-sync-non-finalized-loop' of github.com:prysmaticlabs/prysm into init-sync-non-finalized-loop
* Merge refs/heads/master into init-sync-non-finalized-loop
* Merge refs/heads/master into init-sync-non-finalized-loop
2020-08-24 14:07:21 +00:00
Preston Van Loon
3aa95b9c16
Use correct context for IsFinalizedBlock call ( #7053 )
...
* Use correct context for IsFinalizedBlock call
* Merge branch 'master' into use-correct-ctx
2020-08-19 19:55:39 +00:00
Victor Farazdagi
0a5ec502b0
Updates resyncIfBehind() functionality ( #7039 )
...
* defines BestNonFinalized
* updates blocks_fetcher
* updates blocks_queue
* Merge branch 'master' into fix-resync
* Nishant's suggestion
* Merge branch 'fix-resync' of github.com:prysmaticlabs/prysm into fix-resync
* unit test
* Merge branch 'master' into fix-resync
* fixes test
* Merge refs/heads/master into fix-resync
2020-08-18 02:10:45 +00:00
rkapka
1f21e196b6
Fix multiple anti-patterns from DeepSource analysis ( #6951 )
...
* Merge variable declaration and assignment
* Use result of type assertion to simplify cases
* Replace call to bytes.Compare with bytes.Equal
* Drop unnecessary use of the blank identifier
* Replace x.Sub(time.Now()) with time.Until(x)
* Function literal can be simplified
* Use a single append to concatenate two slices
* Replace time.Now().Sub(x) with time.Since(x)
* Omit comparison with boolean constant
* Omit redundant nil check on slices
* Nested if can be replaced with else-if
* Function call can be replaced with helper function
* Omit redundant control flow
* Use plain channel send or receive
* Simplify returning boolean expression
* Merge branch 'origin-master' into fix-antipatterns
* Merge branch 'master' into fix-antipatterns
2020-08-10 16:16:45 +00:00
Nishant Das
859e59b6f7
Change Sync Error Logs To Debug Logs ( #6865 )
...
* switch over to debug logs
* change back
* Change e2e to debug logging
* Merge refs/heads/master into changeToDebug-2
* Merge refs/heads/master into changeToDebug-2
2020-08-04 20:30:40 +00:00
Victor Farazdagi
84697a0a59
Adds peer scorer manager ( #6752 )
...
* prepares peer scorer collection
* decouples scoring service into separate object
* updates references
* renames package
* removes redundant test init
* gazelle
* gofmt
* Merge branch 'master' into peer-scorer-manager
* updates comment
* fix build
* Merge refs/heads/master into peer-scorer-manager
* Merge refs/heads/master into peer-scorer-manager
* Merge refs/heads/master into peer-scorer-manager
* Merge refs/heads/master into peer-scorer-manager
* Merge refs/heads/master into peer-scorer-manager
* Merge refs/heads/master into peer-scorer-manager
* Merge refs/heads/master into peer-scorer-manager
* Merge refs/heads/master into peer-scorer-manager
* Merge refs/heads/master into peer-scorer-manager
* Merge refs/heads/master into peer-scorer-manager
2020-07-29 09:26:46 +00:00
Victor Farazdagi
f0ffd5af03
Introduces peer scorer service ( #6579 )
...
* introduces peer scorer service
* gazelle
* Merge branch 'master' into peer-scoring-service
* fixes comment
* fix build error
* linter suggestions
* Merge branch 'master' into peer-scoring-service
* updates tests
* Merge branch 'master' into peer-scoring-service
* badresponses scorer tests
* gazelle
* Merge branch 'master' into peer-scoring-service
* Merge branch 'master' into peer-scoring-service
* adds scorer_test
* gazelle
* updates bad response default penalty
* more comments
* Merge branch 'master' into peer-scoring-service
* Merge branch 'master' into peer-scoring-service
* Merge branch 'master' into peer-scoring-service
* Merge refs/heads/master into peer-scoring-service
* Merge refs/heads/master into peer-scoring-service
* Merge refs/heads/master into peer-scoring-service
* Merge refs/heads/master into peer-scoring-service
* Merge refs/heads/master into peer-scoring-service
* Merge refs/heads/master into peer-scoring-service
* Merge refs/heads/master into peer-scoring-service
* Merge refs/heads/master into peer-scoring-service
* introduces peerdatastore into status
* makes sure that commong peer data store is used
* Merge branch 'peer-scoring-service' of github.com:prysmaticlabs/prysm into peer-scoring-service
* linter
* gazelle
* updates tests
* Merge branch 'master' into peer-scoring-service
* fixes tests
* Nishant's suggestions
* Merge refs/heads/master into peer-scoring-service
* Merge refs/heads/master into peer-scoring-service
* Merge refs/heads/master into peer-scoring-service
* Merge refs/heads/master into peer-scoring-service
* Merge refs/heads/master into peer-scoring-service
* Merge refs/heads/master into peer-scoring-service
* Merge refs/heads/master into peer-scoring-service
* Merge branch 'master' into peer-scoring-service
* gofmt
* Nishant's suggestion to use isBadPeer
* Merge refs/heads/master into peer-scoring-service
2020-07-20 15:12:59 +00:00
Nishant Das
cc3c3a0c54
QSP 29: Add Rate Limiter For All Topics ( #6606 )
...
* initial commit
* Merge branch 'master' of https://github.com/prysmaticlabs/geth-sharding into rateLimiter
* finally
* add mutex
* rate limiter for all rpc reqs
* remove recursive readlocks
* spelling
* Merge refs/heads/master into rateLimiter
* Merge refs/heads/master into rateLimiter
* Merge refs/heads/master into rateLimiter
* fix all tests
* fix all tests
* Merge refs/heads/master into rateLimiter
* Merge refs/heads/master into rateLimiter
* Merge refs/heads/master into rateLimiter
* Merge refs/heads/master into rateLimiter
* Merge refs/heads/master into rateLimiter
* Merge refs/heads/master into rateLimiter
* Merge refs/heads/master into rateLimiter
* Merge refs/heads/master into rateLimiter
* Merge refs/heads/master into rateLimiter
* Merge refs/heads/master into rateLimiter
2020-07-17 08:58:51 +00:00
Ivan Martinez
c69b3f568e
Move hard-coded constants to global consts ( #6467 )
...
* Move hard-coded constants to global consts
* Fixes
* Merge branch 'master' into remove-hard-constants
* Merge refs/heads/master into remove-hard-constants
* Merge refs/heads/master into remove-hard-constants
* Merge refs/heads/master into remove-hard-constants
* Merge refs/heads/master into remove-hard-constants
* Comments
* Merge refs/heads/master into remove-hard-constants
* Merge refs/heads/master into remove-hard-constants
* Merge refs/heads/master into remove-hard-constants
* Merge refs/heads/master into remove-hard-constants
* Merge refs/heads/master into remove-hard-constants
* Merge branch 'master' of github.com:prysmaticlabs/prysm into remove-hard-constants
2020-07-03 15:25:32 +00:00
Nishant Das
7896e087e5
Add in Better Logging for Requests ( #6483 )
...
* add in better logging
* gaz
* last one
* mess about
* check strings
* fix
2020-07-03 10:08:45 +00:00
Nishant Das
ac9bc5d98b
Reset Streams at the End of the Request ( #6481 )
...
* close all incoming streams
* use proper helper
* shift to debug
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2020-07-03 16:21:18 +08:00
Victor Farazdagi
1b0cfb408e
QSP-BestPractice: Refactors inline ttfb/resp time constants ( #6463 )
...
* refactors inline ttfb/resp time constants
2020-07-01 09:47:59 +00:00
Raul Jordan
a0c38c8d0a
QSP-33 Check Max Response For All Topics ( #6424 )
...
* remove max len funcs
* fix up tests
Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com>
2020-06-30 09:50:28 -05:00
Raul Jordan
ab89053597
QSP-45 Add Check for No Connected Peers BestFinalized ( #6402 )
...
* no error returned
* no target root
* fix build
* Merge refs/heads/master into best-finalized
2020-06-26 16:35:12 +00:00
Nishant Das
73f3a653bf
Clean Up Dead Peers ( #6413 )
...
* clean up dead peers
* Merge refs/heads/master into clearDeadPeers
* comment
* Merge branch 'clearDeadPeers' of https://github.com/prysmaticlabs/geth-sharding into clearDeadPeers
2020-06-26 12:24:55 +00:00
Raul Jordan
1b430e0c17
QSP-62 Corrupted Clock In Stream Deadlines ( #6404 )
...
* deadline warn
* add proper godoc information
* clarify
* Merge refs/heads/master into corrupted-clock
* fix broken build
* Merge refs/heads/master into corrupted-clock
* Merge refs/heads/master into corrupted-clock
2020-06-25 22:36:18 +00:00
Shay Zluf
edb08bd209
QPS-20 implement removeDisconnectedPeerStatus ( #6370 )
...
* QPS-20 implement removeDisconnectedPeerStatus
* Merge refs/heads/master into remove_disconnected_peer_status
* Merge refs/heads/master into remove_disconnected_peer_status
* Merge refs/heads/master into remove_disconnected_peer_status
* Merge refs/heads/master into remove_disconnected_peer_status
* Merge refs/heads/master into remove_disconnected_peer_status
* Merge refs/heads/master into remove_disconnected_peer_status
* Merge refs/heads/master into remove_disconnected_peer_status
* Merge refs/heads/master into remove_disconnected_peer_status
* Merge refs/heads/master into remove_disconnected_peer_status
* Merge refs/heads/master into remove_disconnected_peer_status
* Merge refs/heads/master into remove_disconnected_peer_status
* Merge refs/heads/master into remove_disconnected_peer_status
* remove function
* Merge branch 'remove_disconnected_peer_status' of github.com:prysmaticlabs/prysm into remove_disconnected_peer_status
* Merge refs/heads/master into remove_disconnected_peer_status
* Merge branch 'remove_disconnected_peer_status' of github.com:prysmaticlabs/prysm into remove_disconnected_peer_status
2020-06-24 10:40:33 +00:00
Victor Farazdagi
41c8ff4c1b
Renames receiver in sync service ( #6348 )
...
* updates coinciding vars
* renames receiver in sync service
* Merge branch 'master' into sync-rename-receiver
2020-06-22 20:37:48 +00:00
terence tsao
4c143f4ed4
Fix underflow in resyncIfBehind
( #6274 )
2020-06-15 16:46:36 -07:00
Nishant Das
933ab6808b
mark peer as bad ( #6250 )
2020-06-14 07:10:18 -07:00
Nishant Das
c06d61c3d0
fix issue ( #6152 )
2020-06-06 09:16:46 +08:00