forked from ethereum/go-ethereum
-
Notifications
You must be signed in to change notification settings - Fork 13
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
Changes to enable stateless block execution in geth #26
Closed
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
internal/ethapi: support retrieving header RLPs too
* eth/tracers: fix calltracer fault handling * eth/tracers: fix calltracer indentation
internal/ethapi: make header/block rlp retrieval canonical
The test did not synchronize with per-case goroutines, and thus didn't notice that some tests were just hanging. This change adds missing synchronization and fixes the broken tests.
…um#23646) This PR adds a method to the debug namespace, to iterate over the blocks and check where we have the roots on disk.
This update includes fixes for the *BSD build and go module vendoring.
This resolves a long-standing TODO. The point of copying the address is to ensure that all data referenced by types.Transaction is independent of the data passed into the constructor. Co-authored-by: Felix Lange <[email protected]>
This change removes misuses of sync.WaitGroup in BlockChain. Before this change, block insertion modified the WaitGroup counter in order to ensure that Stop would wait for pending operations to complete. This was racy and could even lead to crashes if Stop was called at an unfortunate time. The issue is resolved by adding a specialized 'closable' mutex, which prevents chain modifications after stopping while also synchronizing writers with each other. Co-authored-by: Felix Lange <[email protected]>
…#23683) Fixes ethereum#23681 After the fix I get the address 0x6d6d02e83c4ced98204e20126acf27e9d87b8af2 for the tx mentioned in the ticket, which agrees with etherscan.
Go 1.17.2 fixes some miscompilation issues on amd64 and a runtime issue with timers. While the upgrade is not strictly necessary for go-ethereum right now, it is still good to be up-to-date.
This ensures that all miner goroutines have exited before stopping the blockchain. Co-authored-by: Felix Lange <[email protected]>
This fixes a data race on worker.current by moving the call to StopPrefetcher into the main loop. The commit also contains fixes for two other races in unit tests of unrelated packages.
node.Node no longer registers any account manager backends by default, they need to be registered explicitly. For ethash-based tests, we actually don't need any accounts in the miner keystore. Just set the etherbase instead to make mining work. For clique, the signer account must be in the keystore. The change also adds interrupt handling in stress tests.
…3701) This prevents the console from crashing when auto-completing on a variable or property that is null or undefined. Fixes ethereum#23693
Co-authored-by: Felix Lange <[email protected]>
* cmd/evm: t9n: validate transaction intrinsic gas * cmd/evm: t9n: stricter tx validation
* build: increase thread stack size when running alpine linux * review feedback: force a stack size of 8M on all linux distribs * fix missing extldflags
* les/vflux/server: fix metrics * les/vflux/server: fix metrics
* Update tests to showcase that forked blocks can still be looked up by their hash
This removes some code: - The clique engine calculated the snapshot twice when verifying headers/blocks. - The method GetBlockHashesFromHash in Header/Block/Lightchain was only used by tests. It is now removed from the API. - The method GetTdByHash internally looked up the number before calling GetTd(hash, num). In many cases, callers already had the number, and used this method just because it has a shorter name. I have removed the method to make the API surface smaller.
gballet
force-pushed
the
verkle-trie-proof-in-block-rebased
branch
2 times, most recently
from
March 25, 2022 10:26
d0bcc59
to
e1adb6f
Compare
gballet
force-pushed
the
verkle-trie-proof-in-block-rebased
branch
from
March 25, 2022 10:29
e1adb6f
to
dd6425e
Compare
* fix: don't add PUSH1-data during contract deployment * remove import cycle in tests (#92)
* safe gas add * fix build
Co-authored-by: Tanishq Jasoria <[email protected]>
* Remove the code analysis interface to reduce PR footprint * fix unit test
* upgrade branch to use bandersnatch * fix a couple issues * update precomp file
Not going to rebase this, Jared will work on a rewrite of the thing. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR is here to keep track of the changes needed to enable stateless block execution in geth. It's removed from the original PR in order to reduce its file footprint.