MinaProtocol / mina

Mina is a cryptocurrency protocol with a constant size blockchain, improving scaling while maintaining decentralization and security.
https://minaprotocol.com
Apache License 2.0
1.99k stars 527 forks source link

Respect tps when deploying zkapps #13145

Closed georgeee closed 2 weeks ago

georgeee commented 1 year ago

In zkapp scheduler when zkapps are deployed, it's done before sending of transactions in one burst.

In order to make this function more reliably, implement pause between zkapp deployments (in the same way it's being done for zkapp transactions), in such a way that number of zkapps deployed per second doesn't exceed tps.

E.g. if 54 zkapps are to be deployed, tps = 0.2 and experiment duration is 20 minutes, it's expected that for the first three minutes exactly 18 zkapp deployments per minute will be sent out. And starting from fourth minute zkapp transactions will be sent. So that 54 zkapp deployment transactions and 306 zkapp transactions will be sent out.

Run always ends after duration minutes pass, even if not all zkapps are deployed.

mrmr1993 commented 2 weeks ago

Fixed in #13149