Skip to content
This repository was archived by the owner on Apr 23, 2026. It is now read-only.

Missed RPC calls implemented in BSC geth#83

Merged
setunapo merged 3 commits into
node-real:develfrom
Ankr-network:bsc_missed_api
Jun 13, 2023
Merged

Missed RPC calls implemented in BSC geth#83
setunapo merged 3 commits into
node-real:develfrom
Ankr-network:bsc_missed_api

Conversation

@gladcow

@gladcow gladcow commented May 17, 2023

Copy link
Copy Markdown

BSC geth contains several RPC API calls under 'eth' namespace which are missed in Erigon. That means some issues are possible when you are trying to substitute BSC geth instance with Erigon instance, some services that use this API can be broken.

Full list of this RPC calls:

eth_getDiffAccountsWithScope
eth_getHeaderByHash
eth_getDiffAccounts
eth_getVerifyResult
eth_health
eth_getHeaderByNumber
eth_getTransactionsByBlockNumber
eth_resend
eth_fillTransaction
eth_getTransactionDataAndReceipt
eth_getTransactionReceiptsByBlockNumber
eth_pendingTransactions
eth_getHashrate
eth_etherbase
eth_subscribeSyncStatus
eth_getFilterLogs

Some of this calls are not implemented in original geth too, so this API set is optional, it is available only if user adds bsc entity to -http.api parameter (i.e. ./rpcdaemon --datadir=/dev --private.api.addr=localhost:9090 --http.api=eth,erigon,web3,net,debug,trace,parity,txpool,bsc). But user can call them in 'eth' namespace in spite of the bsc name for this API module (i.e. python code: response = requests.post('http://localhost:18545', json=request("eth_getTransactionReceiptsByBlockNumber", params=[1]))).

Not all of this functions are implemented here (for example, functions related to account usage like eth_resend or eth_pendingTransactions, etc.) but I have added their declaration to have the full list of missed implementation for the future improvements.

@setunapo setunapo merged commit 1ad23c2 into node-real:devel Jun 13, 2023
@setunapo

Copy link
Copy Markdown
Collaborator

thank you for your contribution.

avatarH added a commit to node-real/bsc-erigon-avatar that referenced this pull request Jul 3, 2023
add log

add log

fix bug?

fix bug?

update

fix bug?

fix bug?

fix bug?

add log

add log

add log

add log

add log

add log

fix

fix

add log

add log

fix bug

remove log

fix bug?

add log

fix bug

fix bug

add trace block diff by number

rlp encode to json marshal

update

update

storage key change to hex to test

revert

update

feature: Step by step sync (node-real#116)

Missed RPC calls implemented in BSC geth (node-real#83)

* Add rpc calls that implemented in BSC geth but not in erigon
* Register 'bsc' API module under 'eth' API namespace
* Several missed calls implementation

Fix bugs in trie hash computation

solve the mismatch validator bug with final solution (node-real#135)

update the version for bsc-erigon (node-real#136)

Port Herzt upgrade: London & Berlin (node-real#138)

optimization (node-real#131)

release: prepare for release v1.1.2 (node-real#142)

fix: log info

System contract upgrade fix and RPC refine (node-real#146)

* e2: avoid do RestoreCodeHash twice (erigontech#7706)

- do it only once in HistoryStateReader

* fix system contract upgrade

* update

---------

Co-authored-by: Alex Sharov <AskAlexSharov@gmail.com>

update the config

update the version

remove log

remove log

remove log

update diff layer return

update

update

update

update

new try

new try

update

update
blxdyx pushed a commit to blxdyx/bsc-erigon that referenced this pull request Jan 15, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants