Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add delay when getting storedFlushId from the executor/hashdb #3625

Merged
merged 2 commits into from
May 22, 2024

Conversation

agnusmor
Copy link
Contributor

@agnusmor agnusmor commented May 8, 2024

What does this PR do?

Adds a delay (sleep) when getting storedFlushId from the executor/hashdb. Today updateProverIdAndFlushId function when it needs to get the storedFlushId from executor/hashdb, it loops continously sending the request to executor/hashdb to get the last storedFlushid, but that polling is without any delay between retries, therefore can have some impact in the executor/hashdb performance. This PR adds configurable delay between retries to avoid to overhead executor/hashdb with these requests.

New configuration parameter has been added:

[Sequencer.Finalizer]
FlushIdCheckInterval = "50ms"

Reviewers

Main reviewers:

@ToniRamirezM

@agnusmor agnusmor added config cherry-picked Content has been cherry-picked into a higher version branch zkevm-seq-agg labels May 8, 2024
@agnusmor agnusmor added this to the v0.6.8 milestone May 8, 2024
@agnusmor agnusmor self-assigned this May 8, 2024
@cla-bot cla-bot bot added the cla-signed label May 8, 2024
@agnusmor agnusmor merged commit 60d6c74 into release/v0.6.8 May 22, 2024
16 checks passed
@agnusmor agnusmor deleted the feature/sleep-flush-id branch May 22, 2024 08:49
@agnusmor agnusmor modified the milestones: v0.6.8, v0.7.0 May 24, 2024
agnusmor added a commit that referenced this pull request May 24, 2024
* Add sleep delay when getting storedFlushId from the executor/hashdb

* update config doc
agnusmor added a commit that referenced this pull request May 27, 2024
…#3651)

* Add sleep delay when getting storedFlushId from the executor/hashdb

* update config doc
agnusmor added a commit that referenced this pull request Jun 6, 2024
* Add sleep delay when getting storedFlushId from the executor/hashdb

* update config doc
agnusmor added a commit that referenced this pull request Jun 6, 2024
…#3692)

* Add sleep delay when getting storedFlushId from the executor/hashdb

* update config doc
Stefan-Ethernal pushed a commit to 0xPolygon/cdk-validium-node that referenced this pull request Jun 26, 2024
…gonHermez#3625)

* Add sleep delay when getting storedFlushId from the executor/hashdb

* update config doc
Stefan-Ethernal added a commit to 0xPolygon/cdk-validium-node that referenced this pull request Jul 2, 2024
* Update DS Format (0xPolygonHermez#3608)

* protobuf datastream

* proto batch end (0xPolygonHermez#3612)

* fix genesis DS (0xPolygonHermez#3615)

* Fix DSSendL2Block batch number (0xPolygonHermez#3617)

* Fix DSSendL2Block batch number

* latest proto (0xPolygonHermez#3620)

* Fix DSSendBatchEnd (0xPolygonHermez#3621)

* add TxFeeCap config (0xPolygonHermez#3611)

* Add delay when getting storedFlushId from the executor/hashdb (0xPolygonHermez#3625)

* Add sleep delay when getting storedFlushId from the executor/hashdb

* update config doc

* Fix use of L2coinbase configured in sequencesender.L2Coinbase parameter (0xPolygonHermez#3642)

* fix use l2coinbase configured in sequencesender.L2Coinbase parameter

* update doc

* Feature/3640 synchronizer choose to sync from l2 (0xPolygonHermez#3641)

* 0xPolygonHermez#3640. New Param Synchronizer.L2Synchronization.Enable to choose if sync from L2

* change synchronization config params 'Enable' to 'Enabled' (0xPolygonHermez#3656)

* change 'Enable' to 'Enabled' on sync config and changed comments

* Cherry-pick 0xPolygonHermez#3650: Do fatal when datastream channel is full (workaround to fix datastream blocking issue) (0xPolygonHermez#3654)

* Do fatal when datastream channel is full (workaround to fix datastream blocking issue) (0xPolygonHermez#3650)

* Do fatal when datastream channel is full (this will restart sequencer automatically)

* update datastream library (more ds-debug logs)

* fix decrease DataToStreamChannelCount

* add optimistic gas computation while estimating gas (0xPolygonHermez#3653)

* Use Eth block hash for l2 blocks in data stream (0xPolygonHermez#3661)

* Use Eth block hash for l2 blocks in data stream

* handle minTimestamp

* empty imStateRoot (0xPolygonHermez#3663)

* empty imStateRoot

* fix comment

* Cherry-pick 0xPolygonHermez#3659,0xPolygonHermez#3662: Remove sync with virtual state (synchronizer). Add L1 block confirmations (0xPolygonHermez#3666)

* Remove sync with virtual state (synchronizer). Add L1 block confirmat… (0xPolygonHermez#3659)

* Remove sync with virtual state (synchronizer). Add L1 block confirmations to consider sequence final

* fix get monitored tx receipt

* update doc

* Skip wait L1 block confirmations after restart (0xPolygonHermez#3662)

* skip wait L1 block confirmations after restart

* skip checking last batch sequenced in SC after restart

* set default value of SequenceL1BlockConfirmations to 32

* set default value of SequenceL1BlockConfirmations to 2 for debug/test

* fix config_test

* fix doc

* remove db tx from RPC (0xPolygonHermez#3648) (0xPolygonHermez#3683)

* remove synchronizer dependency from eth tx manager to confirm monitored tx (0xPolygonHermez#3658) (0xPolygonHermez#3677)

* Cherry-pick 0xPolygonHermez#3669: Add WriteTimeout config parameter to StreamServer (0xPolygonHermez#3690)

* Add WriteTimeout config parameter to StreamServer (0xPolygonHermez#3669)

* Add WriteTimeout config parameter to StreamServer. Update DS library

* update doc

* update default value for StreamServer.WriteTimeout config parameter. Increase buffer for datastream channel

* fix doc

* fix config test

* fix doc

* change imstateroot handling in DS (0xPolygonHermez#3698)

* change imstateroot handling in DS

* Fix tests

* Generate node config doc

* Update the diff

---------

Co-authored-by: Toni Ramírez <[email protected]>
Co-authored-by: agnusmor <[email protected]>
Co-authored-by: Thiago Coimbra Lemos <[email protected]>
Co-authored-by: Joan Esteban <[email protected]>
akonring added a commit to EspressoSystems/cdk-validium-node that referenced this pull request Jul 25, 2024
* Adding initial for deb packaging for amd64

* Fix typo in comment

* Removing unnecessary directory creation, artifact from testing

* Adding fix for mkdir in postinstall

* Fix broken Unit declaration in service file

* Integrate the `zkevm-node` v0.7.0 changes (0xPolygon#146)

* Update DS Format (0xPolygonHermez#3608)

* protobuf datastream

* proto batch end (0xPolygonHermez#3612)

* fix genesis DS (0xPolygonHermez#3615)

* Fix DSSendL2Block batch number (0xPolygonHermez#3617)

* Fix DSSendL2Block batch number

* latest proto (0xPolygonHermez#3620)

* Fix DSSendBatchEnd (0xPolygonHermez#3621)

* add TxFeeCap config (0xPolygonHermez#3611)

* Add delay when getting storedFlushId from the executor/hashdb (0xPolygonHermez#3625)

* Add sleep delay when getting storedFlushId from the executor/hashdb

* update config doc

* Fix use of L2coinbase configured in sequencesender.L2Coinbase parameter (0xPolygonHermez#3642)

* fix use l2coinbase configured in sequencesender.L2Coinbase parameter

* update doc

* Feature/3640 synchronizer choose to sync from l2 (0xPolygonHermez#3641)

* 0xPolygonHermez#3640. New Param Synchronizer.L2Synchronization.Enable to choose if sync from L2

* change synchronization config params 'Enable' to 'Enabled' (0xPolygonHermez#3656)

* change 'Enable' to 'Enabled' on sync config and changed comments

* Cherry-pick 0xPolygonHermez#3650: Do fatal when datastream channel is full (workaround to fix datastream blocking issue) (0xPolygonHermez#3654)

* Do fatal when datastream channel is full (workaround to fix datastream blocking issue) (0xPolygonHermez#3650)

* Do fatal when datastream channel is full (this will restart sequencer automatically)

* update datastream library (more ds-debug logs)

* fix decrease DataToStreamChannelCount

* add optimistic gas computation while estimating gas (0xPolygonHermez#3653)

* Use Eth block hash for l2 blocks in data stream (0xPolygonHermez#3661)

* Use Eth block hash for l2 blocks in data stream

* handle minTimestamp

* empty imStateRoot (0xPolygonHermez#3663)

* empty imStateRoot

* fix comment

* Cherry-pick 0xPolygonHermez#3659,0xPolygonHermez#3662: Remove sync with virtual state (synchronizer). Add L1 block confirmations (0xPolygonHermez#3666)

* Remove sync with virtual state (synchronizer). Add L1 block confirmat… (0xPolygonHermez#3659)

* Remove sync with virtual state (synchronizer). Add L1 block confirmations to consider sequence final

* fix get monitored tx receipt

* update doc

* Skip wait L1 block confirmations after restart (0xPolygonHermez#3662)

* skip wait L1 block confirmations after restart

* skip checking last batch sequenced in SC after restart

* set default value of SequenceL1BlockConfirmations to 32

* set default value of SequenceL1BlockConfirmations to 2 for debug/test

* fix config_test

* fix doc

* remove db tx from RPC (0xPolygonHermez#3648) (0xPolygonHermez#3683)

* remove synchronizer dependency from eth tx manager to confirm monitored tx (0xPolygonHermez#3658) (0xPolygonHermez#3677)

* Cherry-pick 0xPolygonHermez#3669: Add WriteTimeout config parameter to StreamServer (0xPolygonHermez#3690)

* Add WriteTimeout config parameter to StreamServer (0xPolygonHermez#3669)

* Add WriteTimeout config parameter to StreamServer. Update DS library

* update doc

* update default value for StreamServer.WriteTimeout config parameter. Increase buffer for datastream channel

* fix doc

* fix config test

* fix doc

* change imstateroot handling in DS (0xPolygonHermez#3698)

* change imstateroot handling in DS

* Fix tests

* Generate node config doc

* Update the diff

---------

Co-authored-by: Toni Ramírez <[email protected]>
Co-authored-by: agnusmor <[email protected]>
Co-authored-by: Thiago Coimbra Lemos <[email protected]>
Co-authored-by: Joan Esteban <[email protected]>

* Added Polygon R&D Link (0xPolygon#147)

---------

Co-authored-by: Daniel Jones <[email protected]>
Co-authored-by: Stefan Negovanović <[email protected]>
Co-authored-by: Toni Ramírez <[email protected]>
Co-authored-by: agnusmor <[email protected]>
Co-authored-by: Thiago Coimbra Lemos <[email protected]>
Co-authored-by: Joan Esteban <[email protected]>
Co-authored-by: Daniel Jones <[email protected]>
Co-authored-by: AMAN PANDEY <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cherry-picked Content has been cherry-picked into a higher version branch cla-signed config zkevm-seq-agg
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants