Commit Graph

76 Commits

Author SHA1 Message Date
omahs
c21d77aa20
Fix: typos (#7710)
Fix: typos
2023-06-12 14:39:52 +07:00
Jason Yellick
80530e10a9
Add storage proof support to eth_getProof (#7202)
This PR completes the implementation of `eth_getProof` by adding support
for storage proofs.

Because storage proofs are potentially overlapping, the existing
strategy of simply aggregating all proofs together into a single result
was challenging. Instead, this commit rewires things to introduce a
ProofRetainer, which aggregates proofs and their corresponding nibble
encoded paths in the trie. Once all of the proofs have been aggregated,
the caller requests the proof result, which then iterates over the
aggregated proofs, placing each into the relevant proof array into the
result.

Although there are tests for `eth_getProof` as an RPC and for the new
`ProofRetainer` code, the code coverage for the proof generation over
complex tries is lacking. But, since this is not a new problem I'll plan
to follow up this PR with an additional one adding more coverage into
`turbo/trie`.

---------

Co-authored-by: Jason Yellick <jason@enya.ai>
2023-04-05 03:01:31 +00:00
a
d3c790c166
add eth_getFilterLogs to docs (#7171)
add eth_getFilterLogs to docs
2023-03-24 04:03:01 +00:00
alex.sharov
3a4ad0c614 GraphQL docs 2023-02-21 08:25:06 +07:00
Andrew Ashikhmin
37741b74eb
Remove erigon_issuance & erigon_watchTheBurn (#6685)
Some issuance happens on the CL side now, so removing support for these
now inaccurate proprietary methods to make our life easier.
2023-01-24 22:54:08 +01:00
Enrique Jose Avila Asapche
287a3d1d6c
added erigon_GetBlockReceiptsByBlockHash (#6292)
I added a way to get canonical receipts through block hash under the
erigon name space
#6229


Tested: 
BlockHash:
0xb5d50393734894e02a94a500a5a5aade9c66f388438aeed8d7775b3b344745f1
<img width="1727" alt="Screenshot 2022-12-12 at 22 16 18"
src="https://user-images.githubusercontent.com/19207637/207166860-436ecf26-a777-4b2f-8377-22acec732486.png">
2022-12-13 20:41:51 +00:00
Andrew Ashikhmin
d82c778ab3
Withdrawals part 1 (#6009)
This PR partially implements
[EIP-4895](https://eips.ethereum.org/EIPS/eip-4895): Beacon chain push
withdrawals as operations. The new Engine API methods
(https://github.com/ethereum/execution-apis/pull/195) are implemented.

_Body downloader and saving withdrawals into DB are not implemented
yet!_
2022-12-01 09:15:01 +01:00
J1ang
537ae16655
refactor: add erigon_getLatestLogs & fix typo (#5994)
refactor: add `erigon_getLatestLogs` & fix typo
2022-11-09 11:21:04 +07:00
net.wyman
98420edd30
Update README.md (#5914)
the rpc_daemon README.md is out of date and miss the eth_subscribe logs
event
2022-11-01 08:56:22 +07:00
Enrique Jose Avila Asapche
0c64c3f2c7
added a way to get latest executed block post POS (#5343)
* added a way to get latest executed block post POS

* added erigon_ExecutedBlockNumber into readme

* optional rpc.BlockNumber

* better message

* updated readme
2022-09-14 13:56:31 +03:00
Chase
927f9e1c56
Add eth_callMany and debug_traceCallMany to README (#5319)
* Add eth_callMany to README

Should have been included in https://github.com/ledgerwatch/erigon/pull/4567

* Update README.md

* Update README.md
2022-09-09 11:18:23 +07:00
ledgerwatch
73e2d1146e
Cleanup interfaces (#5254)
Co-authored-by: Alexey Sharp <alexeysharp@Alexeys-iMac.local>
2022-09-01 16:44:37 +01:00
Enrique Jose Avila Asapche
0640e946dd
updated eth_subscribe info (#4905) 2022-08-02 20:45:37 +03:00
hexoscott
b84867f13b
adding health endpoint documentation for headers (#4656) 2022-07-06 14:22:32 +02:00
Alex Sharov
f0fde26902
document rpc filter methods (#4548) 2022-06-27 09:45:19 +06:00
Chase Wright
1c4584b438
Include admin methods in README (#4519) 2022-06-23 07:13:32 +06:00
Uwe Voelker
dfae218a6f
fix typo (#4486) 2022-06-18 20:17:38 +01:00
ledgerwatch
7080c6fab9
Fix help and README.md about pruning options (#3914)
* Update README.md

* Update flags.go

* Update README.md
2022-04-18 21:50:21 +01:00
Enrique Jose Avila Asapche
231255f026
correct naming (#3563) 2022-02-22 08:42:23 +07:00
Enrique Jose Avila Asapche
d12560f1b5
Get block by time stamp (#3514)
* initial

* binary search through blocks

* snapshot

* returning highest block

* oldest block is now 0

* multiple test written for  getBlockByTimeStamp

* retrieved picked block time stamp

* added into erigon_api

* returning pointer

* reverting c37b99b2d7ebc2250b103393378cc4a4f94a6c21

* deleted print

* proper rpc block response

* fixing test

* returning lowest block

* lint

* typo

* fixed test

* returning lowest-1

* skip while loop for times too big or small

* added to readme

* using sort.Search
2022-02-20 10:45:29 +00:00
bernard-wagner
58d2118c10
rpcdaemon: added debug_traceBlockByNumber and debug_traceBlockByHash (#3548) 2022-02-19 08:15:27 +00:00
Andrew Ashikhmin
0701c83222
Fix stall on unwind in handleForkChoice (#3536)
* ReadHeader instead of ReadHeaderByHash

* Add Engine API to rpcdaemon README

* Fix nil pointer dereference in HandlePendingBlock

* Fix latestValidHash JSON

* Delete GetPayloadBodiesV1

* Break infinte unwind loop in handleForkChoice

* More logging
2022-02-17 18:30:57 +01:00
Omer Korner
eabc2da6db
Fix typo (#3529) 2022-02-16 18:42:00 +00:00
Enrique Jose Avila Asapche
35fcd3a829
Merging Turbo bor into devel (#3372)
* implemented bor consensus

* add bor flags to default

* change bucket into snapshot to clique

* enable stateSync

* bypass reciept checks

* fix receipt calculation and bor logs

* fix: contract call wrt bor

* Update mumbai config

* Add: bor-mainnet flag and config

* Add bor consensus to integration

* use header coinbase in block context

* london fork mumbai changes

* fix genesis error

* Jaipur fork for mumbai

* add sysCall to verifyHeader

* added bor related rpc method implementation

* added bor specific rpc extensions

* fixes in snapshot implementation, major refactor for bor rpc

* modify consensus specific db path for bor

* fix: remove parallel compute for get root hash rpc method

* Added bor-receipt flow

* Use turbo-bor-lib and bor tables

* Use bor table in RPC snapshot

* Update README.md

* Update README.md

* Update README.md

* Update README.md

* update rpc readme

* link rpc docs in readme

* Update Readme

* Update Readme

* move erigon namespace rpc methods to eth

* rm: erigon namespace

* rm: erigon namespace, update list of available rpc methods, add example

* fix: binary name in rpc readme

* fix: max db size

* Add london to bor-mainnet

* updated node.go

* add system req to readme

* golang version fix readme

* added networknames in correct place

* nil

* ran gofmt

* erigon

* fixed fake.go

* dont need turbor-lib

* old readme

* fixing readme

* half

* other half

* changed return

* fixing return

* fixed return

* fixed flags

* gofmt

* merge with devel

* latest erigon-lib

* fixed context.coinbase

* took out syscall

* fixed params in hash

* bor type now is consensus.Engine

* parlia is consensus.Engine

* missing arg and repeated importation

* repeated importation

* fixed eth_receipts.go

* deleted duplicate issuance

* part of consensus.Engine type

* added eth_api issuance

* networkname

* added erigon_system file

* fork struct taken out

* added erigon block

* getLogByHash for erigonImpl

* gofmt

* fixed lint

* ops

* gofmt

* gofmt

* added APIImple functions

* fixed clique test

* took out print

* fixed state added balance

* fixed README

* fixed rpcDaemon README

* fixed integration README

* updated blockchain.go

* lint

* added bor back into blockchain.go

* took out comment

* lint

* updated daemon

* updated wtb

* removed duplicate

* removed VerifyHeaders

* prevent use of wrong Transfer

* fixed state_processor.go

* fixed state_transition.go

* fixed headers

* returning err

* error handling in bor read tx look up

* put for txLookUp

* dealing with error

* lint

* traces

* more traces

* fixed receipt in execution

* getTrasanction receipt for bor or others

* nil

* lint

* ops

* deleted syscall

* took out else

* Merge branch 'devel

* tests syscalls

* changed borReceipt to receipt

* reset header algos

* arguments fix

* took out prefixes

* lint

* erigon-named

* borReceiptKey = blocknumber

* reverts e3b60c2e159d03efcb855f7ab3da5a098dd60c33.

* correct hashing tx

* dont need it here

* lint

* added txlookup for bor

* change to uint256

* outputs for isBor

* wrapper

* added isBor and isParlia

* isBor

* fixed BorTransfer

* not readBody

* correct prefix

* added blockNum

* added readStorageBody

* readStorageBody

* lint

* got rid of unnecessary bor_receipt func

* onlny if bor

* use clone

* append

* writeToSlice

* added isBor flag

* fixed writeToSlice

* normal sorting

* lint

* Reset erigon-snapshots

* Move bor prefix into if

Co-authored-by: Krishna Upadhyaya <krishnau1604@gmail.com>
Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
Co-authored-by: Uttam Singh <uttamkhanduja@yahoo.in>
Co-authored-by: Giulio Rebuffo <giulio.rebuffo@gmail.com>
Co-authored-by: Alex Sharp <alexsharp@Alexs-MacBook-Pro.local>
2022-02-07 21:30:46 +00:00
Zachinquarantine
4f2b7dba0c
Remove deprecated eth compilers (#3376)
* Update eth_deprecated.go

* Update eth_api.go

* Update eth_api.go

* Update eth_deprecated.go

* Update README.md
2022-01-30 06:42:17 +00:00
e-danko
d0123f52fd
Starknet grpc (#3312)
* created starknet_call method

* updated erigon lib

* updated erigon lib

* lint issues
2022-01-20 15:34:00 +00:00
Tim Daubenschütz
432fd11b5b
Document txpool.api.addr when using txpool API (#3116) 2021-12-12 23:06:12 +00:00
Alex Sharov
178fd1931d
Genesis sync from existing snapshots (#3087) 2021-12-05 09:03:08 +07:00
Alex Sharov
4062c0590b
Update README.md 2021-12-02 18:52:41 +07:00
ledgerwatch
3449eed8e0
More info about remote RPC Daemon state cache + eth_createAccessList (#3068) 2021-12-01 07:52:36 +00:00
Dean
83f780cab1
Update README.md (#2887)
typo
2021-10-28 20:00:39 +07:00
Alex Sharov
b878096ef0
RPCDaemon: reduce --rpc.batch.concurrency default from 50 to 2 (#2784) 2021-10-06 13:58:18 +07:00
Igor Mandrigin
9848028aef
Implement a simple healthcheck (#2740) 2021-09-28 16:27:57 +07:00
Zachinquarantine
5da7fb64bf
Remove deprecated Whisper code (#2726) 2021-09-25 22:28:25 +07:00
alex.sharov
6927165f0e save 2021-09-21 08:57:23 +07:00
Alex Sharov
4f358fca88
Increase default private.api.ratelimit (#2521)
* increase default private.api.ratelimit

* increase default private.api.ratelimit
2021-08-13 16:51:59 +01:00
Alex Sharov
f78484d141
Update README.md 2021-08-11 15:19:13 +07:00
Alex Sharov
6bf34b5cb8
RPC: eth_feeHistory (#2501)
* eth_FeeHistory

* eth_FeeHistory

* eth_FeeHistory

* lint

* lint
2021-08-08 14:27:47 +07:00
Richard Patel
743fe8d77b
README.md: add txpool_status (#2491) 2021-08-06 17:10:29 +07:00
Alex Sharov
c3e1cfdac8
Pruning for: exec, log_index, tx_lookup, history stages (#2399)
* Pruning for: exec, log_index, tx_lookup, history stages

* Pruning for: exec, log_index, tx_lookup, history stages

* Pruning for: exec, log_index, tx_lookup, history stages

* Pruning for: exec, log_index, tx_lookup, history stages

* add tvm flag

* save

* db migration for storage mode
add flag --prune=
remove flag --storage-mode=
add flag --experiments=tevm,...
rename integration set_storage_mode to set_prune

* fix

* forward move of stages must skip everything before PruneTo

* keep in db progress of prune method

* keep in db progress of prune method

* simplify logs

* simplify logs

* simplify logs

* fix test

* simplify logs

* simplify logs

* simplify logs

* simplify logs

* remove callTraceSet as dupsort
use etl transform for txlookup prune
remove some logs

* cleanup tests a bit

* print_stages and eth_sync to show prune progress

* fix print_stages

* add readme about --prune.to flag

* more docs

* add --prune.history.older and other flags support

* fix migration on empty db

* better toString

* better toString
2021-07-20 21:03:19 +01:00
Alex Sharov
e1c17e035a
rawdb.TxLookup - to return err, remove docs of rpcdaemon dual mode (#2340) 2021-07-11 12:25:21 +07:00
Alex Sharov
360735318b
rpc: add --rpc.batch.concurrency flag (#2308) 2021-07-07 10:48:21 +07:00
Andrea Lanfranchi
bc16c0127f
Update README.md 2021-06-28 12:55:14 +02:00
Alex Sharov
0edac73451
RPC: trace_replayTransaction and trace_replayBlockTransactions methods (stateDiff only) (#2238)
* trace_replay

* trace_replay

* trace_replay

* trace_replay

* trace_replay
2021-06-26 13:27:29 +01:00
mempirate
e51b09da0d
Implements net_peerCount RPC call for internal sentries (#2172)
* Implement API and protobuf

* Squashed 'interfaces/' content from commit cd3eca28e

git-subtree-dir: interfaces
git-subtree-split: cd3eca28e50367af9de52fca863b1d7528bff774

* Implement net_peerCount RPC call

* Squashed 'interfaces/' content from commit cd3eca28e

git-subtree-dir: interfaces
git-subtree-split: cd3eca28e50367af9de52fca863b1d7528bff774

* Fixing merge conflicts

* Remove p2p.Server from Ethereum backend

* Fix peerCount calculation for internal sentries

* Bump eth backend API version

* Update rpcdaemon README

* Document version change
2021-06-17 22:55:20 +01:00
Alex Sharov
eedabfca85
txpool_content (#2127)
* txpool_content

* txpool_content

* txpool_content

* txpool_content

* Squashed 'interfaces/' content from commit 1e916d013

git-subtree-dir: interfaces
git-subtree-split: 1e916d0137aff7bd9e9356cc203cea5f0ea9c7f1

* add test

* add test

* add test

* merge devel

* save
2021-06-11 09:34:47 +01:00
ledgerwatch
aae8fddaee
Update README.md (#2125) 2021-06-09 11:20:46 +01:00
alex.sharov
3aeb186bd1 db faq about RAM 2021-06-06 20:02:15 +07:00
alex.sharov
ef380a0e89 docs of rpcdaemon batch requests 2021-06-06 08:09:25 +07:00
Alex Sharov
6fc8905ce5
Docs read db (#2103)
* docs for

* allow anonymous viewers of grafana board
2021-06-05 15:10:01 +01:00