- 10 Jan, 2023 1 commit
-
-
Mario Vega authored
-
- 09 Jan, 2023 3 commits
-
-
Péter Szilágyi authored
eth/downloader: fix unexpected skeleton header deletion
-
Péter Szilágyi authored
-
Gary Rong authored
-
- 06 Jan, 2023 4 commits
-
-
Péter Szilágyi authored
params: core: enable shanghai based on timestamps
-
Péter Szilágyi authored
-
Péter Szilágyi authored
-
Marius Kjærstad authored
-
- 03 Jan, 2023 11 commits
-
-
rjl493456442 authored
* all: cleanup trie interface * eth, trie: address comments
-
Martin Holst Swende authored
-
Felix Lange authored
* p2p/discover: add more packet information in logs This adds more fields to discv5 packet logs. These can be useful when debugging multi-packet interactions. The FINDNODE message also gets an additional field, OpID for debugging purposes. This field is not encoded onto the wire. I'm also removing topic system related message types in this change. These will come back in the future, where support for them will be guarded by a config flag. * p2p/discover/v5wire: rename 'Total' to 'RespCount' The new name captures the meaning of this field better.
-
Felix Lange authored
Alarm is a timer utility that simplifies code where a timer needs to be rescheduled over and over. Doing this can be tricky with time.Timer or time.AfterFunc because the channel requires draining in some cases. Alarm is optimized for use cases where items are tracked in a heap according to their expiry time, and a goroutine with a for/select loop wants to be woken up whenever the next item expires. In this application, the timer needs to be rescheduled when an item is added or removed from the heap. Using a timer naively, these updates will always require synchronization with the global runtime timer datastructure to update the timer using Reset. Alarm avoids this by tracking the next expiry time and only modifies the timer if it would need to fire earlier than already scheduled. As an example use, I have converted p2p.dialScheduler to use Alarm instead of AfterFunc.
-
Péter Szilágyi authored
-
Péter Szilágyi authored
-
Marius van der Wijden authored
-
Marius van der Wijden authored
-
strykerin authored
-
Marius Kjærstad authored
* internal/flags: update copyright year to 2023 * cmd/geth: update copyright year to 2023
-
Ha DANG authored
-
- 29 Dec, 2022 1 commit
-
-
Marius van der Wijden authored
This change sends a HeadChainEvent when SetHead is invoked. The txpool will then reset the txnoncer on receiving the event.
-
- 28 Dec, 2022 2 commits
-
-
rjl493456442 authored
This changes moves the tracking of "deleted in this block" out from snap-only domain, so that it happens regardless of whether the execution is snapshot-backed or trie-backed.
-
Marius van der Wijden authored
* miner: allow for extradata in post-merge blocks * miner: nits * miner: remove extradata checks
-
- 27 Dec, 2022 1 commit
-
-
Zachinquarantine authored
Adds uploads to Kinetic in Launchpad, and removes the upload for 21.10 impish (not supported since July)
-
- 21 Dec, 2022 1 commit
-
-
rjl493456442 authored
This changes the StorageTrie method to return an error when the trie is not available. It used to return an 'empty trie' in this case, but that's not possible anymore under PBSS.
-
- 20 Dec, 2022 1 commit
-
-
Martin Holst Swende authored
This PR builds on #26299, but also updates the tests to the most recent version, which includes tests regarding TheMerge. This change adds checks to the beacon consensus engine, making it more strict in validating the pre- and post-headers, and not relying on the caller to have already correctly sanitized the headers/blocks.
-
- 19 Dec, 2022 2 commits
-
-
rjl493456442 authored
This PR implements resettable freezer by adding a ResettableFreezer wrapper. The resettable freezer wraps the original freezer in a way that makes it possible to ensure atomic resets. Implementation wise, it relies on the os.Rename and os.RemoveAll to atomically delete the original freezer data and re-create a new one from scratch.
-
rjl493456442 authored
This PR fixes an error in trie commit. If the trie.root is nil, it can be two possible scenarios: - The trie was empty, and no change happens - The trie was non-empty and all nodes are dropped For the latter one, we should collect the deletions and apply them into database(e.g. in PBSS).
-
- 15 Dec, 2022 1 commit
-
-
Felix Lange authored
This ensures that RPC method handlers will react to a timeout or cancelled request soon after the event occurs. Co-authored-by:
Sina Mahmoodi <itz.s1na@gmail.com>
-
- 14 Dec, 2022 2 commits
-
-
Ikko Ashimine authored
correspnding -> corresponding
-
Martin Holst Swende authored
This PR adds a check that the safetxhash that we sign corresponds to the one that is expected by the input. If it differs, it tries again with the configured chainid.
-
- 13 Dec, 2022 3 commits
-
-
Martin Holst Swende authored
-
rjl493456442 authored
* core, cmd: fill blockNumber in logs * Update core/state/statedb.go Co-authored-by:
Martin Holst Swende <martin@swende.se> * core/types: revert * core/state: improve comments Co-authored-by:
Martin Holst Swende <martin@swende.se>
-
Alex Stokes authored
A comment suggests that contract creation happens if the recipient of a call is 0x00..00 ("zero address") but in fact the sender must be nil. The zero address is a regular valid address that is commonly used as a "burn" address.
-
- 10 Dec, 2022 1 commit
-
-
Michael de Hoog authored
Currently calling `debug_TraceTransaction` with a transaction hash that doesn't exist returns a confusing error: `genesis is not traceable`. This PR changes the behaviour to instead return an error message saying `transaction not found` Co-authored-by:
Martin Holst Swende <martin@swende.se> Co-authored-by:
Sina Mahmoodi <itz.s1na@gmail.com>
-
- 09 Dec, 2022 3 commits
-
-
Felix Lange authored
This PR adds a new type event.FeedOf[T], which is like event.Feed but parameterized over the channel element type. Performance is unchanged, and it still uses reflect. But unlike Feed, the generic version doesn't need to type-check interface{} arguments. All panic cases are gone from the API.
-
Felix Lange authored
While investigating another issue, I found that all callers of collectLogs have the complete block available. rawdb.ReadReceipts loads the block from the database, so it is better to use ReadRawReceipts here, and derive the receipt information using the block which is already in memory.
-
Sina Mahmoodi authored
This PR makes it possible to modify the flush interval time via RPC. On one extreme, `0s`, it would act as an archive node. If set to `1h`, means that after one hour of effective block processing time, the trie would be flushed. If one block takes 200ms, this means that a flush would occur every `5*3600=18000` blocks -- however, if the memory size of the cached states grows too large, it will flush sooner. Essentially, this makes it possible to configure the node to be more or less "archive:ish", and without restarting the node while reconfiguring it.
-
- 08 Dec, 2022 1 commit
-
-
rjl493456442 authored
--syncTarget is a feature for development purpose in post-merge world. Previously it's added into eth.Config. But it turns out that's a stupid idea. - syncTarget is a block object, which is hard to be put in config file(large) - syncTarget is just a dev feature, doesn't make too much sense to add it in config file So I remove it from the eth config object. And it also fixes the #26328
-
- 07 Dec, 2022 2 commits
-
-
zhiqiangxu authored
This improves readability of function 'push'. sort.Search(N, ...) will at most return N when no match, so ix should be compared with N. The previous version would compare ix with N+1 in case an additional item was appended. No bug resulted from this comparison, but it's not easy to understand why. Co-authored-by:
Felix Lange <fjl@twurst.com>
-
Sina Mahmoodi authored
The gcproc field tracks the amount of time spent processing blocks, and is used to trigger a state flush to disk when a certain threshold is reached. After the merge, single block insertion by CL is the most common source of block processing time, but this time was not added into gcproc.
-