Skip to content

Avoid sending a zero-hash head_block_hash to EEs#3057

Closed
paulhauner wants to merge 2 commits intosigp:unstablefrom
paulhauner:fc-zero-hash
Closed

Avoid sending a zero-hash head_block_hash to EEs#3057
paulhauner wants to merge 2 commits intosigp:unstablefrom
paulhauner:fc-zero-hash

Conversation

@paulhauner
Copy link
Copy Markdown
Member

@paulhauner paulhauner commented Mar 3, 2022

Issue Addressed

After we up-check an EE, we will send a forkchoiceUpdated message to that EE to provide it with the latest head.

When it's pre-merge (i.e., head_block_hash is all-zeros), we don't want to send this message to the EE. Geth provides a warning when this happens:

WARN [03-03|22:10:28.161] Forkchoice requested update to zero hash

I've also filtered out zero-hashes at a few other places too.

Notably, we might still send a zero-hash if we call forkchoiceUpdate during get_payload. I've left that in there for the time being since there's some edge cases we need to address (documented in #3058).

@paulhauner paulhauner added ready-for-review The code is ready for review bellatrix Required to support the Bellatrix Upgrade labels Mar 3, 2022
@paulhauner paulhauner added work-in-progress PR is a work-in-progress ready-for-review The code is ready for review and removed ready-for-review The code is ready for review work-in-progress PR is a work-in-progress labels Mar 3, 2022
paulhauner added a commit that referenced this pull request Mar 4, 2022
Squashed commit of the following:

commit c03670e
Author: Paul Hauner <paul@paulhauner.com>
Date:   Fri Mar 4 09:41:11 2022 +1100

    Filter out zero-hashes

commit 6d269dd
Author: Paul Hauner <paul@paulhauner.com>
Date:   Fri Mar 4 09:09:28 2022 +1100

    Avoid sending fcU with zero hash
paulhauner added a commit that referenced this pull request Mar 7, 2022
Squashed commit of the following:

commit c03670e
Author: Paul Hauner <paul@paulhauner.com>
Date:   Fri Mar 4 09:41:11 2022 +1100

    Filter out zero-hashes

commit 6d269dd
Author: Paul Hauner <paul@paulhauner.com>
Date:   Fri Mar 4 09:09:28 2022 +1100

    Avoid sending fcU with zero hash
paulhauner added a commit to paulhauner/lighthouse that referenced this pull request Mar 7, 2022
Squashed commit of the following:

commit c03670e
Author: Paul Hauner <paul@paulhauner.com>
Date:   Fri Mar 4 09:41:11 2022 +1100

    Filter out zero-hashes

commit 6d269dd
Author: Paul Hauner <paul@paulhauner.com>
Date:   Fri Mar 4 09:09:28 2022 +1100

    Avoid sending fcU with zero hash
@paulhauner
Copy link
Copy Markdown
Member Author

Closing since I will include these changes in #3043.

@paulhauner paulhauner closed this Mar 7, 2022
paulhauner added a commit that referenced this pull request Mar 8, 2022
Squashed commit of the following:

commit 4811406
Author: Paul Hauner <paul@paulhauner.com>
Date:   Tue Mar 8 14:39:58 2022 +1100

    Use spawn_blocking for sync fork choice call

commit b0e0829
Merge: d029c7b 4186d11
Author: Paul Hauner <paul@paulhauner.com>
Date:   Tue Mar 8 10:53:54 2022 +1100

    Merge branch 'unstable' into prepare-proposer

commit d029c7b
Author: Paul Hauner <paul@paulhauner.com>
Date:   Tue Mar 8 10:40:40 2022 +1100

    Add metrics

commit 70e3b82
Author: Paul Hauner <paul@paulhauner.com>
Date:   Tue Mar 8 09:45:47 2022 +1100

    Squash merge of #3057

    Squashed commit of the following:

    commit c03670e
    Author: Paul Hauner <paul@paulhauner.com>
    Date:   Fri Mar 4 09:41:11 2022 +1100

        Filter out zero-hashes

    commit 6d269dd
    Author: Paul Hauner <paul@paulhauner.com>
    Date:   Fri Mar 4 09:09:28 2022 +1100

        Avoid sending fcU with zero hash

commit 76a1d1d
Author: realbigsean <seananderson33@GMAIL.com>
Date:   Thu Mar 3 14:17:54 2022 -0500

    Update beacon_node/beacon_chain/src/beacon_chain.rs

commit 4a7e3a7
Author: realbigsean <seananderson33@GMAIL.com>
Date:   Thu Mar 3 14:17:35 2022 -0500

    Update beacon_node/beacon_chain/tests/payload_invalidation.rs

commit c651994
Merge: bb1f7d0 aea43b6
Author: realbigsean <seananderson33@GMAIL.com>
Date:   Thu Mar 3 14:05:26 2022 -0500

    Merge branch 'unstable' into prepare-proposer

commit bb1f7d0
Author: Paul Hauner <paul@paulhauner.com>
Date:   Thu Mar 3 11:07:24 2022 +1100

    Update beacon_node/execution_layer/src/lib.rs

    Co-authored-by: realbigsean <seananderson33@GMAIL.com>

commit 68e4648
Author: Paul Hauner <paul@paulhauner.com>
Date:   Thu Mar 3 11:04:48 2022 +1100

    Prevent running during sync

commit 5ddeae8
Author: Paul Hauner <paul@paulhauner.com>
Date:   Thu Mar 3 10:57:28 2022 +1100

    Spawn proposer prepare routine instead of waiting

commit 2306b09
Author: Paul Hauner <paul@paulhauner.com>
Date:   Wed Mar 2 19:01:06 2022 +1100

    Fix failing test

commit 8eca77a
Author: Paul Hauner <paul@paulhauner.com>
Date:   Wed Mar 2 18:54:26 2022 +1100

    Fix bugs

commit 15d6b71
Author: Paul Hauner <paul@paulhauner.com>
Date:   Wed Mar 2 13:03:40 2022 +1100

    Read proposer during preparation

commit b1ac426
Author: Paul Hauner <paul@paulhauner.com>
Date:   Tue Mar 1 20:17:34 2022 +1100

    Add more tests

commit 357ff8b
Author: Paul Hauner <paul@paulhauner.com>
Date:   Tue Mar 1 16:41:36 2022 +1100

    Save prev request in exec layer

commit e19fa44
Author: Paul Hauner <paul@paulhauner.com>
Date:   Tue Mar 1 16:41:17 2022 +1100

    Upgrade error to dbg

commit d2d0099
Author: Paul Hauner <paul@paulhauner.com>
Date:   Mon Feb 28 16:29:02 2022 +1100

    Add forkchoice lock

commit 28b94cb
Author: Paul Hauner <paul@paulhauner.com>
Date:   Mon Feb 28 15:30:55 2022 +1100

    Tidy, add comments

commit b24a3ea
Author: Paul Hauner <paul@paulhauner.com>
Date:   Mon Feb 28 15:09:20 2022 +1100

    Don't start update service if there's no EL

commit 3f56ed0
Author: Paul Hauner <paul@paulhauner.com>
Date:   Mon Feb 28 15:08:52 2022 +1100

    Reduce nesting

commit 61c50b7
Author: Paul Hauner <paul@paulhauner.com>
Date:   Mon Feb 28 15:02:42 2022 +1100

    Call prepare_proposer after head change

commit 8fb610c
Author: Paul Hauner <paul@paulhauner.com>
Date:   Mon Feb 28 14:44:51 2022 +1100

    Tidy

commit 7e008cb
Author: Paul Hauner <paul@paulhauner.com>
Date:   Sun Feb 27 12:39:29 2022 +1100

    Add prepare call to HTTP api

commit 44d090e
Author: Paul Hauner <paul@paulhauner.com>
Date:   Sun Feb 27 12:36:32 2022 +1100

    Add proposer prep service

commit 8193fae
Author: Paul Hauner <paul@paulhauner.com>
Date:   Sun Feb 27 12:12:45 2022 +1100

    Add fc call to preparation endpoint

commit 2ad4e18
Author: Paul Hauner <paul@paulhauner.com>
Date:   Sun Feb 27 11:56:45 2022 +1100

    Repair after rebase

commit f1e6056
Author: Paul Hauner <paul@paulhauner.com>
Date:   Sun Feb 27 11:41:34 2022 +1100

    Start adding payload prep delay

commit 0f72e34
Author: Paul Hauner <paul@paulhauner.com>
Date:   Sun Feb 27 11:31:33 2022 +1100

    Add proposer prep to beacon chain

commit 10d545f
Author: Paul Hauner <paul@paulhauner.com>
Date:   Sun Feb 27 10:42:08 2022 +1100

    Add `proposers` cache to EL
paulhauner added a commit that referenced this pull request Mar 8, 2022
Squashed commit of the following:

commit f0153f1
Author: Paul Hauner <paul@paulhauner.com>
Date:   Wed Mar 9 09:39:48 2022 +1100

    Apply suggestions from code review

    Co-authored-by: realbigsean <seananderson33@GMAIL.com>

commit b6b6a34
Author: realbigsean <sean@sigmaprime.io>
Date:   Tue Mar 8 08:56:23 2022 -0500

    Cargo.lock

commit e270c61
Merge: c86ada0 381d0ec
Author: realbigsean <sean@sigmaprime.io>
Date:   Tue Mar 8 08:55:57 2022 -0500

    Merge branch 'unstable' of https://github.com/sigp/lighthouse into prepare-proposer

    � Conflicts:
    �	Cargo.lock
    �	beacon_node/execution_layer/Cargo.toml

commit c86ada0
Author: Paul Hauner <paul@paulhauner.com>
Date:   Tue Mar 8 16:58:39 2022 +1100

    Add payload id hit/miss metrics

commit 4811406
Author: Paul Hauner <paul@paulhauner.com>
Date:   Tue Mar 8 14:39:58 2022 +1100

    Use spawn_blocking for sync fork choice call

commit b0e0829
Merge: d029c7b 4186d11
Author: Paul Hauner <paul@paulhauner.com>
Date:   Tue Mar 8 10:53:54 2022 +1100

    Merge branch 'unstable' into prepare-proposer

commit d029c7b
Author: Paul Hauner <paul@paulhauner.com>
Date:   Tue Mar 8 10:40:40 2022 +1100

    Add metrics

commit 70e3b82
Author: Paul Hauner <paul@paulhauner.com>
Date:   Tue Mar 8 09:45:47 2022 +1100

    Squash merge of #3057

    Squashed commit of the following:

    commit c03670e
    Author: Paul Hauner <paul@paulhauner.com>
    Date:   Fri Mar 4 09:41:11 2022 +1100

        Filter out zero-hashes

    commit 6d269dd
    Author: Paul Hauner <paul@paulhauner.com>
    Date:   Fri Mar 4 09:09:28 2022 +1100

        Avoid sending fcU with zero hash

commit 76a1d1d
Author: realbigsean <seananderson33@GMAIL.com>
Date:   Thu Mar 3 14:17:54 2022 -0500

    Update beacon_node/beacon_chain/src/beacon_chain.rs

commit 4a7e3a7
Author: realbigsean <seananderson33@GMAIL.com>
Date:   Thu Mar 3 14:17:35 2022 -0500

    Update beacon_node/beacon_chain/tests/payload_invalidation.rs

commit c651994
Merge: bb1f7d0 aea43b6
Author: realbigsean <seananderson33@GMAIL.com>
Date:   Thu Mar 3 14:05:26 2022 -0500

    Merge branch 'unstable' into prepare-proposer

commit bb1f7d0
Author: Paul Hauner <paul@paulhauner.com>
Date:   Thu Mar 3 11:07:24 2022 +1100

    Update beacon_node/execution_layer/src/lib.rs

    Co-authored-by: realbigsean <seananderson33@GMAIL.com>

commit 68e4648
Author: Paul Hauner <paul@paulhauner.com>
Date:   Thu Mar 3 11:04:48 2022 +1100

    Prevent running during sync

commit 5ddeae8
Author: Paul Hauner <paul@paulhauner.com>
Date:   Thu Mar 3 10:57:28 2022 +1100

    Spawn proposer prepare routine instead of waiting

commit 2306b09
Author: Paul Hauner <paul@paulhauner.com>
Date:   Wed Mar 2 19:01:06 2022 +1100

    Fix failing test

commit 8eca77a
Author: Paul Hauner <paul@paulhauner.com>
Date:   Wed Mar 2 18:54:26 2022 +1100

    Fix bugs

commit 15d6b71
Author: Paul Hauner <paul@paulhauner.com>
Date:   Wed Mar 2 13:03:40 2022 +1100

    Read proposer during preparation

commit b1ac426
Author: Paul Hauner <paul@paulhauner.com>
Date:   Tue Mar 1 20:17:34 2022 +1100

    Add more tests

commit 357ff8b
Author: Paul Hauner <paul@paulhauner.com>
Date:   Tue Mar 1 16:41:36 2022 +1100

    Save prev request in exec layer

commit e19fa44
Author: Paul Hauner <paul@paulhauner.com>
Date:   Tue Mar 1 16:41:17 2022 +1100

    Upgrade error to dbg

commit d2d0099
Author: Paul Hauner <paul@paulhauner.com>
Date:   Mon Feb 28 16:29:02 2022 +1100

    Add forkchoice lock

commit 28b94cb
Author: Paul Hauner <paul@paulhauner.com>
Date:   Mon Feb 28 15:30:55 2022 +1100

    Tidy, add comments

commit b24a3ea
Author: Paul Hauner <paul@paulhauner.com>
Date:   Mon Feb 28 15:09:20 2022 +1100

    Don't start update service if there's no EL

commit 3f56ed0
Author: Paul Hauner <paul@paulhauner.com>
Date:   Mon Feb 28 15:08:52 2022 +1100

    Reduce nesting

commit 61c50b7
Author: Paul Hauner <paul@paulhauner.com>
Date:   Mon Feb 28 15:02:42 2022 +1100

    Call prepare_proposer after head change

commit 8fb610c
Author: Paul Hauner <paul@paulhauner.com>
Date:   Mon Feb 28 14:44:51 2022 +1100

    Tidy

commit 7e008cb
Author: Paul Hauner <paul@paulhauner.com>
Date:   Sun Feb 27 12:39:29 2022 +1100

    Add prepare call to HTTP api

commit 44d090e
Author: Paul Hauner <paul@paulhauner.com>
Date:   Sun Feb 27 12:36:32 2022 +1100

    Add proposer prep service

commit 8193fae
Author: Paul Hauner <paul@paulhauner.com>
Date:   Sun Feb 27 12:12:45 2022 +1100

    Add fc call to preparation endpoint

commit 2ad4e18
Author: Paul Hauner <paul@paulhauner.com>
Date:   Sun Feb 27 11:56:45 2022 +1100

    Repair after rebase

commit f1e6056
Author: Paul Hauner <paul@paulhauner.com>
Date:   Sun Feb 27 11:41:34 2022 +1100

    Start adding payload prep delay

commit 0f72e34
Author: Paul Hauner <paul@paulhauner.com>
Date:   Sun Feb 27 11:31:33 2022 +1100

    Add proposer prep to beacon chain

commit 10d545f
Author: Paul Hauner <paul@paulhauner.com>
Date:   Sun Feb 27 10:42:08 2022 +1100

    Add `proposers` cache to EL
paulhauner added a commit to paulhauner/lighthouse that referenced this pull request Mar 9, 2022
Squashed commit of the following:

commit f0153f1
Author: Paul Hauner <paul@paulhauner.com>
Date:   Wed Mar 9 09:39:48 2022 +1100

    Apply suggestions from code review

    Co-authored-by: realbigsean <seananderson33@GMAIL.com>

commit b6b6a34
Author: realbigsean <sean@sigmaprime.io>
Date:   Tue Mar 8 08:56:23 2022 -0500

    Cargo.lock

commit e270c61
Merge: c86ada0 381d0ec
Author: realbigsean <sean@sigmaprime.io>
Date:   Tue Mar 8 08:55:57 2022 -0500

    Merge branch 'unstable' of https://github.com/sigp/lighthouse into prepare-proposer

    � Conflicts:
    �	Cargo.lock
    �	beacon_node/execution_layer/Cargo.toml

commit c86ada0
Author: Paul Hauner <paul@paulhauner.com>
Date:   Tue Mar 8 16:58:39 2022 +1100

    Add payload id hit/miss metrics

commit 4811406
Author: Paul Hauner <paul@paulhauner.com>
Date:   Tue Mar 8 14:39:58 2022 +1100

    Use spawn_blocking for sync fork choice call

commit b0e0829
Merge: d029c7b 4186d11
Author: Paul Hauner <paul@paulhauner.com>
Date:   Tue Mar 8 10:53:54 2022 +1100

    Merge branch 'unstable' into prepare-proposer

commit d029c7b
Author: Paul Hauner <paul@paulhauner.com>
Date:   Tue Mar 8 10:40:40 2022 +1100

    Add metrics

commit 70e3b82
Author: Paul Hauner <paul@paulhauner.com>
Date:   Tue Mar 8 09:45:47 2022 +1100

    Squash merge of sigp#3057

    Squashed commit of the following:

    commit c03670e
    Author: Paul Hauner <paul@paulhauner.com>
    Date:   Fri Mar 4 09:41:11 2022 +1100

        Filter out zero-hashes

    commit 6d269dd
    Author: Paul Hauner <paul@paulhauner.com>
    Date:   Fri Mar 4 09:09:28 2022 +1100

        Avoid sending fcU with zero hash

commit 76a1d1d
Author: realbigsean <seananderson33@GMAIL.com>
Date:   Thu Mar 3 14:17:54 2022 -0500

    Update beacon_node/beacon_chain/src/beacon_chain.rs

commit 4a7e3a7
Author: realbigsean <seananderson33@GMAIL.com>
Date:   Thu Mar 3 14:17:35 2022 -0500

    Update beacon_node/beacon_chain/tests/payload_invalidation.rs

commit c651994
Merge: bb1f7d0 aea43b6
Author: realbigsean <seananderson33@GMAIL.com>
Date:   Thu Mar 3 14:05:26 2022 -0500

    Merge branch 'unstable' into prepare-proposer

commit bb1f7d0
Author: Paul Hauner <paul@paulhauner.com>
Date:   Thu Mar 3 11:07:24 2022 +1100

    Update beacon_node/execution_layer/src/lib.rs

    Co-authored-by: realbigsean <seananderson33@GMAIL.com>

commit 68e4648
Author: Paul Hauner <paul@paulhauner.com>
Date:   Thu Mar 3 11:04:48 2022 +1100

    Prevent running during sync

commit 5ddeae8
Author: Paul Hauner <paul@paulhauner.com>
Date:   Thu Mar 3 10:57:28 2022 +1100

    Spawn proposer prepare routine instead of waiting

commit 2306b09
Author: Paul Hauner <paul@paulhauner.com>
Date:   Wed Mar 2 19:01:06 2022 +1100

    Fix failing test

commit 8eca77a
Author: Paul Hauner <paul@paulhauner.com>
Date:   Wed Mar 2 18:54:26 2022 +1100

    Fix bugs

commit 15d6b71
Author: Paul Hauner <paul@paulhauner.com>
Date:   Wed Mar 2 13:03:40 2022 +1100

    Read proposer during preparation

commit b1ac426
Author: Paul Hauner <paul@paulhauner.com>
Date:   Tue Mar 1 20:17:34 2022 +1100

    Add more tests

commit 357ff8b
Author: Paul Hauner <paul@paulhauner.com>
Date:   Tue Mar 1 16:41:36 2022 +1100

    Save prev request in exec layer

commit e19fa44
Author: Paul Hauner <paul@paulhauner.com>
Date:   Tue Mar 1 16:41:17 2022 +1100

    Upgrade error to dbg

commit d2d0099
Author: Paul Hauner <paul@paulhauner.com>
Date:   Mon Feb 28 16:29:02 2022 +1100

    Add forkchoice lock

commit 28b94cb
Author: Paul Hauner <paul@paulhauner.com>
Date:   Mon Feb 28 15:30:55 2022 +1100

    Tidy, add comments

commit b24a3ea
Author: Paul Hauner <paul@paulhauner.com>
Date:   Mon Feb 28 15:09:20 2022 +1100

    Don't start update service if there's no EL

commit 3f56ed0
Author: Paul Hauner <paul@paulhauner.com>
Date:   Mon Feb 28 15:08:52 2022 +1100

    Reduce nesting

commit 61c50b7
Author: Paul Hauner <paul@paulhauner.com>
Date:   Mon Feb 28 15:02:42 2022 +1100

    Call prepare_proposer after head change

commit 8fb610c
Author: Paul Hauner <paul@paulhauner.com>
Date:   Mon Feb 28 14:44:51 2022 +1100

    Tidy

commit 7e008cb
Author: Paul Hauner <paul@paulhauner.com>
Date:   Sun Feb 27 12:39:29 2022 +1100

    Add prepare call to HTTP api

commit 44d090e
Author: Paul Hauner <paul@paulhauner.com>
Date:   Sun Feb 27 12:36:32 2022 +1100

    Add proposer prep service

commit 8193fae
Author: Paul Hauner <paul@paulhauner.com>
Date:   Sun Feb 27 12:12:45 2022 +1100

    Add fc call to preparation endpoint

commit 2ad4e18
Author: Paul Hauner <paul@paulhauner.com>
Date:   Sun Feb 27 11:56:45 2022 +1100

    Repair after rebase

commit f1e6056
Author: Paul Hauner <paul@paulhauner.com>
Date:   Sun Feb 27 11:41:34 2022 +1100

    Start adding payload prep delay

commit 0f72e34
Author: Paul Hauner <paul@paulhauner.com>
Date:   Sun Feb 27 11:31:33 2022 +1100

    Add proposer prep to beacon chain

commit 10d545f
Author: Paul Hauner <paul@paulhauner.com>
Date:   Sun Feb 27 10:42:08 2022 +1100

    Add `proposers` cache to EL
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bellatrix Required to support the Bellatrix Upgrade ready-for-review The code is ready for review

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant