-
Notifications
You must be signed in to change notification settings - Fork 20.4k
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
all: remove ethash pow, only retain shims needed for consensus and tests #27178
Conversation
You also have some residue in the lower parts of README.md about running a private miner. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
SGTM
@@ -208,10 +208,6 @@ func newTestWorker(t *testing.T, chainConfig *params.ChainConfig, engine consens | |||
return w, backend | |||
} | |||
|
|||
func TestGenerateBlockAndImportEthash(t *testing.T) { | |||
testGenerateBlockAndImport(t, false) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Shouldn't we also remove the functionality in the test? L 229ff
Does this mean |
It can still sync from genesis, but since the PoW part is frozen and can
never change any more, verifying the PoW fields are skipped.
…On Tue, 6 Jun 2023 at 04:25, zhiqiangxu ***@***.***> wrote:
Does this mean go-ethereum doesn't support sync from genesis any more?
—
Reply to this email directly, view it on GitHub
<#27178 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAA7UGM7GN75SICGMU7IR5DXJ2BHHANCNFSM6AAAAAAXN3NALU>
.
You are receiving this because you modified the open/close state.Message
ID: ***@***.***>
|
…sts (ethereum#27178) * all: remove ethash pow, only retain shims needed for consensus and tests * all: thank you linter * all: disallow launching Geth in legacy PoW mode * cmd/env/internal/t8ntool: remove dangling ethash flag
Back before #27178 , we spun up a number of ethash verifiers to verify headers. So we also had tests to ensure that we were indeed able to abort verification even if we had multiple workers running. With PR #27178, we removed the parallelism in verification, and these tests are now failing, since we now just sequentially fire away the results as fast as possible on one routine. This change removes the (sometimes failing) tests
…sts (ethereum#27178) * all: remove ethash pow, only retain shims needed for consensus and tests * all: thank you linter * all: disallow launching Geth in legacy PoW mode * cmd/env/internal/t8ntool: remove dangling ethash flag
Back before ethereum#27178 , we spun up a number of ethash verifiers to verify headers. So we also had tests to ensure that we were indeed able to abort verification even if we had multiple workers running. With PR ethereum#27178, we removed the parallelism in verification, and these tests are now failing, since we now just sequentially fire away the results as fast as possible on one routine. This change removes the (sometimes failing) tests
…s and tests (ethereum#27178)" This reverts commit 3eb5306.
…s and tests (ethereum#27178)" This reverts commit 3eb5306.
…s and tests (ethereum#27178)" This reverts commit dde2da0.
…s and tests (ethereum#27178)" This reverts commit dde2da0.
Remove PoW 😅
The PR also removes the ethash related flags, configs and API methods in a non-backwards compatible way. There is quite a bit of stuff that we'd need to keep dangling in the code to avoid "that one user" not having upgrade issues. As we're right after a fork, there's no immediate urgency to update, might as well bork things now.
Probably the PR should add some vocal failure modes for running Geth in non-beacon-ethash mode.Done!We also need a followup PR to move the consensus things into a
legacy
orhistorical
package (or directly into thebeacon
package) and to rewrite the tests to use some beacon shims instead of the current skeletons inethash
. Then we can be free. That needs a bit of refactor so I wanted to start by mass removes and then review the refactors separately more easily.