Commit Graph

2030 Commits

Author SHA1 Message Date
Nishant Das
52250c9e7a Fix Fork Choice Reorg Conditions (#2413)
* 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>
2019-04-28 17:53:51 -04:00
terence tsao
85daf6e807
update to 3.2ETH (#2415) 2019-04-28 14:39:05 -07:00
Raul Jordan
63378793b4
do not run assign every slot (#2412) 2019-04-28 09:44:45 -05:00
Preston Van Loon
80d47468e4 Add a temporary commenting for issue #2408 (#2409) 2019-04-27 21:56:28 -05:00
Preston Van Loon
5167fadbd7 Serve pprof http (#2406)
* serve pprof http

* add comment for linter
2019-04-27 13:41:46 -07:00
Preston Van Loon
769fcb50ab
use Network, not Peerstore (#2404) 2019-04-27 16:05:19 -04:00
Raul Jordan
dcc2250e82
Use HTTP for On Demand Block Requests (#2405)
* use http instead of websocket for on demand block fetching

* use http
2019-04-27 14:45:13 -05:00
Nishant Das
cd302e88c2 Fix Block Processing And UpdateChainHead (#2399)
* fix block processing

* add in defer

* do not update chainhead

* save historical states from all blocks, so that fork choice can retrieve it

* revert changes

* make new changes

* remove forkchoice at the end
2019-04-27 14:36:53 -05:00
Preston Van Loon
210edfc940 P2P handshake handling (#2306)
* proto: illegal wireType 7 :(

* set addr to todo for now so somethign gets sent

* push latest progress

* Add feedback from @raulk. Stream never connects

* working handshake handler

* add exclusions for relay/bootstrap node

* fix tests, still need to add new ones

* remove race, fails coverage

* Add test for negotiation

* gazelle

* regen pb

* Update shared/p2p/handshake_handler.go

Co-Authored-By: prestonvanloon <preston@prysmaticlabs.com>
2019-04-27 14:08:27 -05:00
terence tsao
7a04af7621 Use Withfields for Forked Block (#2394)
* use with fields for forked block

* spacing
2019-04-27 12:08:15 +08:00
frederickalcantara
6ddb5fa81a Added flag to disable rewards/penatlty logging (#2319)
* Added flag to disable rewards/penatlty logging

* Added flag disable log info validator function

* Added flag to disable rewards/penatlty logging

* Changed value to not have it log when it is on and have it logged when it's off

* Added flag to disable rewards/penatlty logging

* Built for cli & types

* fixing flag issue

* Added ctxCli to the validator struct

* Accepted change

* Fixing conditionals and merge conflicts

* Added bracket

* fixed the return statement to its proper place

* Added validator conditional for logging penalties & rewards

* Added conditional for logging penality/reward info

* Making conditional command line log refactorable

* also part of the last commit

* Changed value variable to lowercase

* Fixed if conditional for penalty reward validation

* Synced with master

* Fixed bazel build

* Syncing with master

* Sync with master

* Added true values to logValidator Balances

* Changed values from true to false

* FIX WIP

* Added variables to the validators

* Added negation for logValidatorBalances variable

The name of the flag is DisablePenaltyRewardLogFlag. Since the name of the var is logValidatorBalances. We are assuming that the variable will have a positive. It makes more sense to negate the disable flag as a value rather than keep it positive.

Co-Authored-By: frederickalcantara <frederickaalcantara@gmail.com>

* fixed password

* Remove prevBalance line
2019-04-27 11:56:11 +08:00
Raul Jordan
81c8b130c6
Only Sync With the Peer With the Highest Observed Slot (#2280)
* only accept the highest finalized slot from peers

* use best peer for state requests

* peer id

* rem old tests

* req peers tests pass

* warn level support for peer not having the same protocol

* pretty

* best peer

* comments

* req peers done

* tests passing

* fully functional

* enforce receiving from the best peer

* comments

* lint fixes
2019-04-26 10:18:43 -05:00
frederickalcantara
a170c69653 upgrading linter from gometalinter to golangci-lint (#2100)
* upgrading linter from gometalinter to golangci-lint

* fixed golangci-lint linting

* removed linting before_script command

* removed disable-all command

* Fixed golang config file

* fixed golang config file v2

* removed gosec issue rule

* formatting

* fixed travis build to run golangci-lint

* Add install golangci-lint command

* fixing golangci-lint script

* removed https://

* Added golangci-lint cmd script

* added go get for local lint install

* created a before_script

* add install before script

* Added get script

* added go mod download

* removed go mod downloads

* changed

* removed before script

* Added before script go get lint

* added exit zero to see what went wrong

* removed golang run script

* removed before script

* change lint command

* verbose output

* removed verbose

* change linter enable and disable configuration

* Update .golangci.yml

Removed gotype as a linter

* Update .golangci.yml

Added typecheck linter

* Update .golangci.yml

Added fixed lint version

* Update .golangci.yml

Added gotype

* Update .golangci.yml

Added typecheck

* removed env:lint

* Added env lint

* fixing lint upgrade

* Changing travis configuration

* FIxed spelling errors

* disabled typecheck

* Enabled typecheck

* remove binary

* Deleting lib binary

* adding more linters

* fixed constants

* fix spelling

* fixed all lint issues

* Revert "Changing travis configuration"

This reverts commit 334afe9d05e96261b01f275aa3ada20e7f36aac4.

* Merge branch 'master' of https://github.com/prysmaticlabs/prysm into update-linter

* Changed from Infof to Info

* Fixing commits

* fixing commits with linter config

* added install

* Fixing

* fix log statement
2019-04-26 14:24:01 +08:00
Nishant Das
09083b072c
add log (#2390) 2019-04-26 13:15:53 +08:00
Nishant Das
89600e8978
Remove Duplicated Functions in the Slice Package (#2389)
* remove duplicated funcs

* lint

* remove duplicated tests
2019-04-26 12:31:27 +08:00
Raul Jordan
2318a53fa5
Lock Down the ReceiveBlock Function (#2387)
* lock down receive block

* imports
2019-04-25 23:06:16 -05:00
terence tsao
82d0bbba2e RPC Validator Index Lookup Failover (#2386)
* implemented valIdxLookup and tests

* comments

* comments

* look up in db

* uncomment
2019-04-25 17:57:54 -05:00
Raul Jordan
5bf1032b7d
Prevent Reading Head State on Every Received Attestation (#2383)
* no more calls

* fix lint unused

* Update beacon-chain/attestation/service.go

Co-Authored-By: rauljordan <raul@prysmaticlabs.com>

* fix tests

* fixed broken tests

* using ctx

* fixed single state req

* tests pass

* fix one of last major bottlenecks

* fix test

* lint
2019-04-25 12:21:45 -05:00
Raul Jordan
538d7ec07c Prevent Fetching Head State Many Times in Requesting Latest Attestation (#2374) 2019-04-25 09:44:35 -07:00
Raul Jordan
706aa9b82f
Update Jaeger Export Tracing (#2382)
* added exporter

* fixed jaeger export

* lint

* imports
2019-04-25 10:59:18 -05:00
terence tsao
a84fd21cd7 Minor Cosmetic Updates to Validator Logging (#2377)
* update validator logs

* ops, revert mid point

* do it before the wait

* delta
2019-04-25 11:10:58 -04:00
Nishant Das
75be7be646
Handle Panics In Attestation and Disable Logging (#2380)
* Revert "Use State Instead of Cached Registry (#2372)"

This reverts commit 941810ee7b.

* handle panic

* fix logging

* add test

* gazelle
2019-04-25 21:11:07 +08:00
Preston Van Loon
8abd2e51bd
Update flags.go (#2376) 2019-04-25 07:59:12 -04:00
Preston Van Loon
66f3964c1b allow CORS from anywhere (#2375) 2019-04-24 15:57:06 -05:00
terence tsao
b81eeec374 Optimize block fetch with attestation target fetch (#2373)
* 1st attemp to optimize blk fetch w/ att tgt fetch

* test test test test
2019-04-24 12:21:00 -05:00
Nishant Das
941810ee7b Use State Instead of Cached Registry (#2372)
* fix state reads

* add method to retrieve validator from state

* lint

* batch update attestation

* handle nil case

* add test

* lint

* batch update attestation

* use state instead

* fix test
2019-04-24 10:46:06 -05:00
Nishant Das
54f6fffb58 Batch Attestations in Attestation Service (#2370)
* fix state reads

* add method to retrieve validator from state

* lint

* batch update attestation

* handle nil case

* add test

* lint

* batch update attestation
2019-04-24 09:28:52 -05:00
Nishant Das
89941eec97
Fix State Reads (#2368)
* fix state reads

* add method to retrieve validator from state

* lint

* gosec
2019-04-24 19:03:55 +08:00
shayzluf
6c1740eefc Add Caching to Tree Hashing Algorithm (#1929)
* added todo to hash file in ssz

* params and copy of block cache

* start hash cache

* Hash cache implementation

* fixed some comments

* fixed promatheus duplicate counter name

* removed TODO

* change to use special expiration cache

* function name fixes junk object generator

* naming changes

* gazzle fix

* added pruning last read data test

* fixed gometallinter errors

* fix benchmarks and no int64 not serializable

* move struct from test

* add feature flag

* fix merge issues

* add featureflag to beacon and validator

* featureflag init for tests

* added feature flag to all ssz dependent tests

* remove setter func

* replace k8s tweaked expiration cache to https://github.com/karlseguin/ccache

* remove else

* change request by preston

* added init featureflags to genesis_test

* Update shared/ssz/hash_cache.go

add dot

Co-Authored-By: shayzluf <thezluf@gmail.com>

* Update shared/ssz/hash_cache.go

Co-Authored-By: shayzluf <thezluf@gmail.com>

* Update shared/ssz/hash_cache.go

remove extra space

Co-Authored-By: shayzluf <thezluf@gmail.com>

* Update shared/params/config.go

add dot

Co-Authored-By: shayzluf <thezluf@gmail.com>

* Update shared/featureconfig/config.go

remove dot

Co-Authored-By: shayzluf <thezluf@gmail.com>

* Update shared/featureconfig/config.go

remove dot

Co-Authored-By: shayzluf <thezluf@gmail.com>

* remove powchain from prometheus hash cache name

* fixes fron change requests

* fix change requests

* remove faulty merge test

* gazelle fix

* fix fmt.sprintf

* remove debug binary

* fix gazelle
2019-04-24 13:39:02 +08:00
Raul Jordan
e7ec153390 Interactive Validator Client Onboarding (#2362) 2019-04-23 21:29:06 -07:00
Raul Jordan
64e7db6241
Resolve Contract Address Automatically via HTTP (#2361)
* automatically resolve contract address

* Update beacon-chain/node/node.go

Co-Authored-By: rauljordan <raul@prysmaticlabs.com>

* testnet contract endpoint

* fmt

* use config in msg
2019-04-23 16:33:47 -05:00
Preston Van Loon
376aacdad6 Use infura for http provider as well (#2363) 2019-04-23 16:17:02 -05:00
Raul Jordan
44bc1c1bc6
Suggest to ClearDB if Contract Mismatches Cluster (#2360)
* clear db by default

* revert changes

* comment

* run with clear db
2019-04-23 15:52:52 -05:00
Raul Jordan
e4bbf54f9f
Hardcoded Bootstrap + Relay Nodes (#2359)
* default bootstrap node and local network flag

* default relay node value

* Update shared/p2p/service.go

Co-Authored-By: rauljordan <raul@prysmaticlabs.com>

* use no discovery
2019-04-23 15:30:59 -05:00
Raul Jordan
e36714805a
Enable Ancestor Cache By Default (#2358)
* remove ancestor cache flag

* ancestor cache on by default
2019-04-23 13:15:58 -05:00
Nishant Das
4ed86566c1 Disable RPC while Syncing (#2353)
* handle nil block

* blocking rpc till synced

* remove unused field

* remove log

* fix tests
2019-04-23 10:57:10 -05:00
Nishant Das
a8ce61b387
Remove Proto Clone from State Reads (#2349)
* add cached serialized state to reduce use of proto clone

* review comments

* review comments

* comments on cache
2019-04-23 13:04:21 +08:00
Raul Jordan
7a27d9a227
Move Inclusion Maps to Epoch Processing (#2347)
* fix broken initial sync

* tests pass
2019-04-22 21:30:37 -05:00
terence tsao
41987b2035 Renovate Mega Updates (#2332)
* Update com_github_atlassian_bazel_tools commit hash to 31382b2

* Update io_bazel_rules_k8s commit hash to e7b408f

* Update libp2p

* fixed nat

* nat
2019-04-22 22:06:24 -04:00
Raul Jordan
2d8dd203f1
Optimize LMD-GHOST Vote Counting (#2333)
* 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
2019-04-22 19:59:02 -05:00
Raul Jordan
cfd3e548cd Use Map for Inclusion Distance in EpochProcessing (#2346) 2019-04-22 17:08:20 -07:00
terence tsao
cda3f178cb
Optimize Attestation Inclusion Calculations (#2344) 2019-04-22 15:52:56 -07:00
Raul Jordan
629626dbe6
Loop Once Over state.LatestAttestations in Epoch Processing (#2342)
* single loop for extracting attestations

* complete
2019-04-22 17:31:01 -05:00
Preston Van Loon
19c24ecbdf
remove unused method (#2337) 2019-04-22 13:11:44 -04:00
Preston Van Loon
d00350bf75 disable pubsub signatures and verification (#2339) 2019-04-22 09:44:36 -07:00
Raul Jordan
8ada0e56b7
Advance State Transitions in Update Latest Attestation (#2336)
* advance state transition

* advance N empty state transitions

* imports

* imports
2019-04-22 11:17:12 -05:00
Nishant Das
a5def315ae Separate Registry and Balances (#2334)
* all changes

* lint

* terence's review
2019-04-22 10:52:56 -05:00
Raul Jordan
51d4965388 Enable Committee Cache By Default (#2323) 2019-04-22 06:37:42 -07:00
Nishant Das
68a9a42611 Fix CPU Profiling (#2328)
* fix

* fix validator too
2019-04-21 20:42:34 -05:00
Raul Jordan
1df15f72c4
Ensure Block Processing Failures Return an Error (#2325)
* ensure block failed processing returns an error

* fixed test

* test assertion corrected

* comments

* fix tests

* imports
2019-04-21 17:38:14 -05:00