Commit Graph

36 Commits

Author SHA1 Message Date
i-norden
8ec203ec3d refactor out remaining unused bits 2023-02-21 19:50:58 -06:00
prathamesh0
721a728d4b
Implement getSlice API (#206)
* Implement getSlice API for state nodes

* Implement getSlice API for storage nodes

* Fix the helper function to create a slice of required paths

* Fix query to get state leaf key for given storage root

* Add a test to get state slice for root path

* Add checks in queries to get canonical data

* Add tests to get state slice

* Add a todo for using an iterator

* Avoid filtering out removed nodes

* Add tests to get storage slice

* Remove logs

* Populate extra contract leaves field in the response

* Update tests

* Avoid EOAs in additional data in response

* Use iterator based approach for getSlice

* Skip undesired nodes from stem and head iterators

* Update storage slice tests

* Fix meta data updates

* Use state trie to get stem nodes directly using paths

* Bugfix - Continue processing other trie nodes on encountering a leaf

* Remove unnecessary TODO
2022-12-19 14:12:23 +05:30
4714610b72
Use get_storage_at DB functions. (#205)
* Use new get_storage_at DB functions.

* Use latest ipld-eth-db for tests.
2022-11-16 14:13:10 -06:00
prathamesh0
cc17368c0d
Optimize GQL and getBlock APIs (#201)
* Add optional block number filter to getLogs API

* Use block number while fetching block with transactions

* Fix for failing tests

* Use block number when fetching block objects

* Use block number when fetching a tx by hash

* Add back methods to get block objects by block hash

* Update run_unit_test.sh

Removing echo command, as it seems to be only change in CICD.

* Increase wait time for db setup in unit test job

Co-authored-by: Michael <michael@abastionofsanity.com>
2022-11-04 10:02:09 +05:30
Michael
fc0d7a6dd6
Cerc refactor (#193)
* cerc refactor waiting on unpublished dependencies

* cerc refactor updates for dependencies

* Describe imports got removed

* cleaning up more vulcanize refs in ci/cd

* another test lost Describe imports

* another test lost Describe imports... not caught in go build -a???

* more cerc-io migrations to utilize new git.vdb.to gitea instance

* switching back to github for running unit test

* first try at git.vdb.to as conatiner repository

* targeted tag was incomplete
2022-09-20 11:52:06 -04:00
prathamesh0
4e9f4bbad6
Re-order uncles if calculated uncle hash doesn't match (#188)
* Re-order uncles if calculated uncle hash doesn't match

* Add a spec to test out of order uncles
2022-08-25 15:54:32 +05:30
prathamesh0
e40e8a7335
Optimize eth_getBlockByNumber and eth_getBlockByHash implementations (#187)
* Avoid two step queries for creating a block object

* Use a db tx while fetching block objects

* Upgrade ipfs-ethdb
2022-08-23 12:42:19 +05:30
prathamesh0
6cb54ca790
Update transactions, receipts and logs queries (#173)
* Update queries to fetch data from cids tables

* Fix eth_getTransactionByHash to return tx from canonical block

* Fetch transaction by hash in a single query

* Update queries to fetch data from IPLD blocks table

* Avoid NULL result from canonical block hash query

* Update GitHub workflow and script to run unit tests

* Avoid usage of LIMIT 1 in queries for GQL API

* Fetch IPLD data separately when retrieving latest account data or storage value

* Upgrade geth dependency

* Update GitHub workflow
2022-07-12 13:40:45 +05:30
24a45a3f00 Update unit tests and queries to fetch data from cids tables 2022-05-18 14:38:09 +05:30
867323a1ab Update queries to get data from IPLD blocks table 2022-05-18 14:36:51 +05:30
778bf82dfd Fix queries used for getStorageAt 2022-04-19 14:01:25 +05:30
3aa5cb36ef Fixes for unit tests 2022-04-19 14:01:24 +05:30
8df8b50cb1 Update to use new schema 2022-04-19 14:01:24 +05:30
072ba1edcc Use sqlx for db connection 2022-04-19 14:01:24 +05:30
Arijit Das
500bba43b4 Fix SQL query to check for empty storage value. 2021-09-24 15:37:04 +05:30
Arijit Das
f09f665b11 Fix empty value when contract is deleted. 2021-09-23 16:06:09 +05:30
Arijit Das
54db8f23e0 Refactor the code 2021-09-22 16:18:15 +05:30
n0cte
3a216b2ca3 add data length check 2021-09-22 16:02:05 +05:30
Arijit Das
77d28264f7 Address comments. 2021-09-21 17:54:54 +05:30
Arijit Das
5772d52eb1 Change receipt CID and MHKey to point trie leaf cid and mkhey. 2021-09-21 17:51:38 +05:30
Arijit Das
838ed033f8
Merge pull request #98 from vulcanize/fix-state-remove
Fix state leaf key removed query
2021-09-17 17:32:34 +05:30
Arijit Das
32b4f56557 Update state_cids and storgae_cids query to use node_type. 2021-09-15 17:19:08 +05:30
Arijit Das
d8a5358a70 Remove ipld-eth-indexer dependency. 2021-08-12 11:56:29 +05:30
Ashwin Phatak
70f7face75
getLogs API changes to return txHash, make contract arg optional. (#81)
* getLogs API changes to return txHash, make contract arg optional.

* Populate log index.

* Add test for txn hash in GetLogs request.

* Convert tx string to common.Hash after fetching.

Co-authored-by: Arijit Das <arijitad.in@gmail.com>
2021-07-26 15:43:38 +05:30
Ashwin Phatak
a284a566d5 Get storage API, with storage leaf CID and raw IPLD block. 2021-06-28 12:51:35 +05:30
Arijit Das
c4f7fa2821 Address comments. 2021-06-18 12:12:29 +05:30
ramil
cef4b1ddc6 fix storageAt json-rpc endpoint 2021-04-21 22:09:57 +03:00
Ramil Amerzyanov
e92d35b084
update geth statediff to version v1.9.25-statediff-0.0.14 (#27)
* update geth statediff to version v1.9.25-statediff-0.0.14
run integration tests in github actions

* fix goose install issue

* fix unit test bug.
Added sorting by tx index for transactions and receipts queries
2021-02-19 23:23:45 +03:00
Ian Norden
c0a91b9d9f updated canonical header finder functions 2020-11-09 10:29:04 -06:00
Ian Norden
b128f894c4 postgres functions to check if node was removed (e.g. a la EIP158) in a range; update backend to use these to retrieve state and storage leafs in single (albeit complex) SELECT query 2020-10-31 15:00:03 -05:00
Ian Norden
7c06d4b3a1 additional unit tests 2020-10-30 18:21:44 -05:00
Ian Norden
b208281ad6 optimize GetStorageAt; GetStorageAt unit tests 2020-10-30 12:06:41 -05:00
Ian Norden
b664aee621 unit tests for GetTransactionCount, GetTransactionReceipt, GetBalance, and GetCode 2020-10-30 00:44:41 -05:00
Ian Norden
cffceb53db optimize GetTransactionCount, GetBalance, and GetCode to use secondary indexes instead of operating through ethdb where we have to iterate down trie from root to leaf (multiple db lookups) to access account info 2020-10-29 22:07:39 -05:00
Ian Norden
4f4ab1dd4f update eth backend 2020-10-28 08:23:17 -05:00
Ian Norden
71bc3f8e7b ipld retriever 2020-10-20 15:28:57 -05:00