Merge pull request #1004 from ethereum/JustinDrake-patch-10
Fix two effective_balance bugs
This commit is contained in:
commit
dc458bfd2b
|
@ -1602,10 +1602,10 @@ def process_final_updates(state: BeaconState) -> None:
|
|||
state.eth1_data_votes = []
|
||||
# Update effective balances with hysteresis
|
||||
for index, validator in enumerate(state.validator_registry):
|
||||
balance = min(state.balances[index], MAX_EFFECTIVE_BALANCE)
|
||||
balance = state.balances[index]
|
||||
HALF_INCREMENT = EFFECTIVE_BALANCE_INCREMENT // 2
|
||||
if balance < validator.effective_balance or validator.effective_balance + 3 * HALF_INCREMENT < balance:
|
||||
validator.effective_balance = balance - balance % EFFECTIVE_BALANCE_INCREMENT
|
||||
validator.effective_balance = min(balance - balance % EFFECTIVE_BALANCE_INCREMENT, MAX_EFFECTIVE_BALANCE)
|
||||
# Update start shard
|
||||
state.latest_start_shard = (state.latest_start_shard + get_shard_delta(state, current_epoch)) % SHARD_COUNT
|
||||
# Set active index root
|
||||
|
@ -1839,7 +1839,7 @@ def process_deposit(state: BeaconState, deposit: Deposit) -> None:
|
|||
activation_epoch=FAR_FUTURE_EPOCH,
|
||||
exit_epoch=FAR_FUTURE_EPOCH,
|
||||
withdrawable_epoch=FAR_FUTURE_EPOCH,
|
||||
effective_balance=amount - amount % EFFECTIVE_BALANCE_INCREMENT
|
||||
effective_balance=min(amount - amount % EFFECTIVE_BALANCE_INCREMENT, MAX_EFFECTIVE_BALANCE)
|
||||
))
|
||||
state.balances.append(amount)
|
||||
else:
|
||||
|
|
Loading…
Reference in New Issue