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

Clarify Indexing #28

Open
kianenigma opened this issue Nov 27, 2024 · 8 comments
Open

Clarify Indexing #28

kianenigma opened this issue Nov 27, 2024 · 8 comments
Assignees

Comments

@kianenigma
Copy link
Collaborator

I am aware that an indexer support is WIP, but noting it here to clarify in the future.

Once I deploy a contract, my intuitive next step is to go to subscan and see some evidence of what I have done.

More confusing, remix will print a block number and hash at which this contract is deployed, which I don't really know where it is coming from.

Would be good to have a banner in this tutorial, clarifying the indexing situation.

@athei
Copy link
Member

athei commented Nov 28, 2024

Agreed

@kianenigma
Copy link
Collaborator Author

Can someone in the meantime tell me what is the overall expectation here? Do we expect users to use any of the substrate based explorers, or ETH ones?

Another issue I have noticed is that StateScan and Subscan have very different data.

Screenshot 2024-12-11 at 11 52 44

About naming in StateScan: opensquare-network/statescan-v2#984 they said they will fix it asap.

We can likely ask one to be offline to avoid confusion.

@athei
Copy link
Member

athei commented Dec 11, 2024

statescan seems to not show unsigned transactions. The eth_transact call is unsigned and is used to submit eth transactions to chain. The other calls are done by normal signed polkadot transactions. Basically when you are interacting with pallet_revive using an Polkadot wallet. Those txes were made by me using pjs apps.

@wliyongfeng
Copy link

We implemented EVM scan recently for laos network. Check an example tx here. Has westend assethub already supported EVM?

@athei
Copy link
Member

athei commented Dec 12, 2024

Yes it does. But we are currently exploring what would be the best way to index it. I assume you are decoding the block contents manually and then decoding the eth payload in there. I believe a better way is to do it exclusively via the debug_ tracing RPC endpoints we will be adding. This allows for capturing cross contract calls and it also agnostic to how the EVM is called. If you are decoding the block you would also need to account for the fact that the EVM can be called by Polkadot native extrinsics. The tracing endpoint will take care of that for you.

@wliyongfeng
Copy link

I assume you are decoding the block contents manually and then decoding the eth payload in there

No. We are calling data from a EVM RPC, code here, and combine it with an extrinsic indexer.

I believe a better way is to do it exclusively via the debug_ tracing RPC endpoints we will be adding

Do you mean a EVM compatible RPC for this tracing RPC?

@pgherveou
Copy link
Contributor

Do you mean a EVM compatible RPC for this tracing RPC?

Yes that's the plan, although I don't think there are official specs for tracing endpoints so we will follow what geth is doing

@wliyongfeng
Copy link

Yes that's the plan, although I don't think there are official specs for tracing endpoints so we will follow what geth is doing

Let us know updates and feel free to leave issues on statescan, so we can support ASAP.

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

No branches or pull requests

4 participants