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

Cancun code merge v1.13.12~v1.13.14 #2267

Merged
merged 85 commits into from
Mar 12, 2024

Conversation

buddh0
Copy link
Collaborator

@buddh0 buddh0 commented Mar 8, 2024

Rationale

code upstream, status

  1. compile pass
make all
  1. can work with latest commit of main branch in node-deploy
  2. hash based snap sync against chapel is ok
    hash based full sync against chapel, 600w+ blocks is ok

Example

add an example CLI or API response...

Changes

Notable changes:

4844 related

internal/ethapi: add support for blobs in eth_fillTransaction (#28839)
internal/ethapi: fix defaults for blob fields (#29037)
ethereum, ethclient: add blob transaction fields in CallMsg (#28989)
core/txpool/blobpool: post-crash cleanup and addition/removal metrics(#28914)
core/txpool/blobpool: update the blob db with corruption handling (#29001)
core/txpool, eth, miner: pre-filter dynamic fees during pending tx retrieval (#29005)
core/txpool, miner: speed up blob pool pending retrievals (#29008)
core/txpool, eth, miner: retrieve plain and blob txs separately (#29026)
core/txpool: reject blob txs with blob fee cap below the minimum (#29081)
core/txpool/blobpool: reduce default database cap for rollout (#29090) 

Clean Ups

cmd/devp2p, eth: drop support for eth/67 (#28956)
all: remove the dependency from trie to triedb (#28824)

Others

eth, miner: fix enforcing the minimum miner tip (#28933)
cmd,internal/era: implement export-history subcommand(#26621) 
node, rpc: add configurable HTTP request limit (#28948) 
tests: fix goroutine leak related to state snapshot generation (#28974)
internal/ethapi:fix zero rpc gas cap in eth_createAccessList (#28846)
eth/tracers: Fix callTracer logs on onlyTopCall == true (#29068)

holiman and others added 30 commits January 24, 2024 11:55
…879)

This adds an error if the signer returns a nil value for one of the signature value fields.
The hyperlink in the README file that directs to the Travis CI build was broken.
This commit updates the link to point to the corrent build page.
At some point, `ForkchoiceUpdatedV2` stopped working for `PayloadAttributesV1` while `paris` was active. This was causing a few failures in hive. This PR fixes that, and also adds a gate in `ForkchoiceUpdatedV1` to disallow `PayloadAttributesV3`.
This pull request resets the txlookup cache if chain reorg happens, 
preventing them from remaining reachable. It addresses failures in
the hive tests.
* eth/downloader: fix skeleton cleanup

* eth/downloader: short circuit if nothing to delete

* eth/downloader: polish the logic in cleanup

* eth/downloader: address comments
… (#28914)

* core/txpool/blobpool: clean up resurrected junk after a crash

* core/txpool/blobpool: track transaction insertions and rejections

* core/txpool/blobpool: linnnnnnnt
…er (#28917)

* core/txpool: don't inject lazy resolved transactions into the container

* core/txpool: minor typo fixes
* eth, miner: fix enforcing the minimum miner tip

* ethclient/simulated: fix failing test due the min tip change

* accounts/abi/bind: fix simulater gas tip issue
* all: implement era format, add history importer/export

* internal/era/e2store: refactor e2store to provide ReadAt interface

* internal/era/e2store: export HeaderSize

* internal/era: refactor era to use ReadAt interface

* internal/era: elevate anonymous func to named

* cmd/utils: don't store entire era file in-memory during import / export

* internal/era: better abstraction between era and e2store

* cmd/era: properly close era files

* cmd/era: don't let defers stack

* cmd/geth: add description for import-history

* cmd/utils: better bytes buffer

* internal/era: error if accumulator has more records than max allowed

* internal/era: better doc comment

* internal/era/e2store: rm superfluous reader, rm superfluous testcases, add fuzzer

* internal/era: avoid some repetition

* internal/era: simplify clauses

* internal/era: unexport things

* internal/era,cmd/utils,cmd/era: change to iterator interface for reading era entries

* cmd/utils: better defer handling in history test

* internal/era,cmd: add number method to era iterator to get the current block number

* internal/era/e2store: avoid double allocation during write

* internal/era,cmd/utils: fix lint issues

* internal/era: add ReaderAt func so entry value can be read lazily

Co-authored-by: lightclient <[email protected]>
Co-authored-by: Martin Holst Swende <[email protected]>

* internal/era: improve iterator interface

* internal/era: fix rlp decode of header and correctly read total difficulty

* cmd/era: fix rebase errors

* cmd/era: clearer comments

* cmd,internal: fix comment typos

---------

Co-authored-by: Martin Holst Swende <[email protected]>
Adds a configurable HTTP request limit, and bumps the engine default
* fix wrong comment

* reviewers input

* Update log/handler_glog.go

---------

Co-authored-by: Martin HS <[email protected]>
(ethclient/simulated):fix typo
* params: add cancun timestamp for mainnet

* core/forkid: add test for mainnet cancun forkid

* core/forkid: update todo tests for cancun
This change adds support for blob-transaction in certain API-endpoints, e.g. eth_fillTransaction. A follow-up PR will add support for signing such transactions.
…(#28959)

As mentioned in #26621, the block index format for era1 is not in line with the regular era block index. This change modifies the index so all relative offsets are based against the beginning of the block index record.
fjl and others added 20 commits February 21, 2024 15:48
eth_call and debug_traceCall allow users to override various block fields, among them base fee. However the overriden base fee was not considered for computing the effective gas price of that message, and instead base fee of the base block was used. This has been fixed in this commit.
This PR enhances eth_createAccessList RPC call to support scenarios where the node is launched with an unlimited gas cap (--rpc.gascap 0). The eth_createAccessList RPC call returns failure if user doesn't explicitly set a gas limit.
* eth/catalyst: the same error format

Signed-off-by: tmelhao <[email protected]>

* eth/catalyst: wrong error message for payloadV2 post-cancun

Signed-off-by: tmelhao <[email protected]>

* eth/catalyst: parentBeaconBlockRoot -> parentBlockBeaconRoot

Signed-off-by: tmelhao <[email protected]>

* apply commit review

Signed-off-by: tmelhao <[email protected]>

---------

Signed-off-by: tmelhao <[email protected]>
Co-authored-by: tmelhao <[email protected]>
…081)

* make blobpool reject blob transactions with fee below the minimum

* core/txpool: some minot nitpick polishes and unified error formats

* core/txpool: do less big.Int constructions with the min blob cap

---------

Co-authored-by: Péter Szilágyi <[email protected]>
Add space after links in so they are clickable in vscode.
xcore/txpool/blobpool: reduce default database cap for rollout
* core/txpool: no need to run rotate if no local txs

Signed-off-by: jsvisa <[email protected]>

* Revert "core/txpool: no need to run rotate if no local txs"

This reverts commit 17fab173883168c586d57ca9c05dfcbd9e7831b4.

Signed-off-by: jsvisa <[email protected]>

* use Debug if todo is empty

Signed-off-by: jsvisa <[email protected]>

---------

Signed-off-by: jsvisa <[email protected]>
…9095)

declare the 'already reserved' error in errors.go
@buddh0 buddh0 changed the title Cancun code merge v1.13.12 v1.13.14 Cancun code merge v1.13.12~v1.13.14 Mar 11, 2024
@buddh0 buddh0 marked this pull request as ready for review March 12, 2024 01:34
Copy link
Contributor

@sysvm sysvm left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

Copy link
Contributor

@fynnss fynnss left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@zzzckck zzzckck merged commit eb44655 into bnb-chain:develop Mar 12, 2024
6 of 7 checks passed
@buddh0 buddh0 deleted the cancun_code_merge_v1.13.12_v1.13.14 branch March 12, 2024 07:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.