OffchainLabs / eth-pos-devnet

MIT License
103 stars 124 forks source link

Validator deposits #30

Closed bilaljawed closed 10 months ago

bilaljawed commented 10 months ago

Hey @nisdas

I recently sent a deposit to the address 0x4242... and am trying to reduce the deposit detection time by validators in the beacon. To achieve this, I set the flag in the beacon to --slots-per-archive-point=10. Now, I'm querying the beacon node API at /eth/v1/beacon/states/head/validators. Is this the correct approach, or have I overlooked something?

Is it the right way or am i missing something?

Appreciate your help

GGiGGu commented 4 months ago

hello Mr. @bilaljawed I just wondering does the solution that u used is worked for you?(--slots-per-archive-point=10).

I also deposit to contract so I can check the validator status is DEPOSITED but After 4000 blocks there status still show DEPOSITED... If you don't mind how do you make the validator status to ACTIVATED?

bilaljawed commented 4 months ago

hello Mr. @bilaljawed I just wondering does the solution that u used is worked for you?(--slots-per-archive-point=10).

I also deposit to contract so I can check the validator status is DEPOSITED but After 4000 blocks there status still show DEPOSITED... If you don't mind how do you make the validator status to ACTIVATED?

@GGiGGu

--slots-per-archive-point=10 is not the solution

It takes around 16-17 hours for it to activate, there is some setting in config.yml to reduce this time, i don't have the settings handy right now, are you also running the validator software?

GGiGGu commented 4 months ago

--slots-per-archive-point=10 is not the solution

It takes around 16-17 hours for it to activate, there is some setting in config.yml to reduce this time, i don't have the settings handy right now, are you also running the validator software?

Appreciate @bilaljawed

Yup I'm using geth for execution, prysm for beacon and validator.

But I'm stuck at changing validator status "DEPOSITED" to NEXT STATUS... I was looking for another solution after I waited about 4000 blocks to be a validator. And I just checked it's still "DEPOSITED" after 20000 blocks...

"there is some setting in config.yml to reduce this time" is # Time parameters?

If you don't mind Could you briefly check my commands?


Below are the contents of the file and commands I'm posting, which might help you understand better. my config.yml

CONFIG_NAME: interop
PRESET_BASE: interop

# Genesis
GENESIS_FORK_VERSION: 0x20000089

# Altair
ALTAIR_FORK_EPOCH: 0
ALTAIR_FORK_VERSION: 0x20000090

# Merge
BELLATRIX_FORK_EPOCH: 0
BELLATRIX_FORK_VERSION: 0x20000091
TERMINAL_TOTAL_DIFFICULTY: 0

# Capella
CAPELLA_FORK_EPOCH: 0
CAPELLA_FORK_VERSION: 0x20000092
MAX_WITHDRAWALS_PER_PAYLOAD: 16

DENEB_FORK_VERSION: 0x20000093

# Time parameters
SECONDS_PER_SLOT: 12
SLOTS_PER_EPOCH: 6

# Deposit contract
DEPOSIT_CONTRACT_ADDRESS: 0x4242424242424242424242424242424242424242

my commands

// for geth
./geth --port 30303 --networkid 142536
--http --http.api eth,net,web3,engine,admin --http.addr "0.0.0.0" 
--http.port 8545 --http.corsdomain "*" --http.vhosts "*" 
--ws --ws.api eth,net,web3,engine,admin --ws.addr "0.0.0.0" 
--ws.port 8546 --authrpc.jwtsecret jwt.hex --datadir gethdata 
--syncmode full --allow-insecure-unlock 
--unlock 0x31ff8fb7745a55e77513c8d87c2a502e75c05ab0

// for beacon-chain
./beacon-chain --datadir beacondata --min-sync-peers 0 
--genesis-state genesis.ssz --bootstrap-node= 
--interop-eth1data-votes --chain-config-file config.yml 
--contract-deployment-block 0 --chain-id 142536 
--accept-terms-of-use --jwt-secret jwt.hex 
--suggested-fee-recipient 0x31ff8fb7745a55e77513c8d87c2a502e75c05ab0 
--minimum-peers-per-subnet 0 --enable-debug-rpc-endpoints 
--execution-endpoint kpudata/geth.ipc

// for validator
./validator --wallet-dir=/home/hun/devnet/validator_keys 
--suggested-fee-recipient=0xd088a8031953a777b065976b7cc3a0d381c097cc 
--datadir validatordata --beacon-rpc-provider 127.0.0.1:4000 
--chain-config-file config.yml --accept-terms-of-use
KP-Universe commented 4 months ago

@bilaljawed @GGiGGu Hey guys I also have similar problem.

I just wondering how did you guys deposit to contract on private-chain? I tried "ethereal" tool to deposit to contract, but it's not working for me...

Thanks for reading my question....^^

ebygd commented 1 month ago

--interop-eth1data-votes --chain-config-file config.yml

@GGiGGu Remove the flag --interop-eth1data-votes and it should work. From Prysm docs: "Enable mocking of eth1 data votes for proposers to package into blocks (default: false)"

You will never get consensus on the eth1 votes when they are mocked.

To speed up deposits being picked up, reduce the following timing parameters in config.yml. For example:

ETH1_FOLLOW_DISTANCE: 4
EPOCHS_PER_ETH1_VOTING_PERIOD: 2