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

ETH RPC test cases are failing while doing make test-rpc #37

Closed
gsk967 opened this issue May 6, 2022 · 3 comments
Closed

ETH RPC test cases are failing while doing make test-rpc #37

gsk967 opened this issue May 6, 2022 · 3 comments

Comments

@gsk967
Copy link

gsk967 commented May 6, 2022

Branch : sai/upgrade_cosmos_v0.46

  1. Clone the repo
  2. Checkout to branch sai/upgrade_cosmos_v0.46
  3. Run make test-rpc
    rpc_pending_test.go:97: Pending nonce before tx is 1
    rpc_pending_test.go:100: Current nonce is 1
    utils.go:92: 
        	Error Trace:	utils.go:92
        	            				rpc_pending_test.go:104
        	Error:      	Expected nil, but got: &rpc.Error{Code:-32000, Message:"no registered implementations of type tx.TxExtensionOptionI: tx parse error: tx parse error", Data:interface {}(nil)}
        	Test:       	TestEth_Pending_GetTransactionCount
--- FAIL: TestEth_Pending_GetTransactionCount (6.09s)

Please check errors on github actions

@gsk967 gsk967 changed the title Failing test cases while doing make test-rpc RPC test cases are failing while doing make test-rpc May 6, 2022
@gsk967 gsk967 changed the title RPC test cases are failing while doing make test-rpc ETH RPC test cases are failing while doing make test-rpc May 6, 2022
@i-norden
Copy link

Here is where that error msg originates from: https://github.com/cosmos/cosmos-sdk/blob/main/codec/types/interface_registry.go#L224.

So, I’m not sure how or why yet, but I think we need to register the tx.TxExtensionOptionI type with the interface registry with either https://github.com/cosmos/cosmos-sdk/blob/main/codec/types/interface_registry.go#L112 or https://github.com/cosmos/cosmos-sdk/blob/main/codec/types/interface_registry.go#L124.

I think we need to do that in the app.go somewhere https://github.com/vulcanize/chiba-clonk/blob/main/app/app.go#L212.

Somewhere between https://github.com/vulcanize/chiba-clonk/blob/main/app/app.go#L278 and https://github.com/vulcanize/chiba-clonk/blob/main/app/app.go#L290 I suspect.

Not sure where this tx.TxExtensionOptionI type comes from yet.

Or how exactly to register it with either of those methods.

I believe we use https://github.com/cosmos/cosmos-sdk/blob/main/codec/types/interface_registry.go#L112, the tx.TxExtensionOptionI is provided as the first arg, but not sure what the implementation arg (proto message type) is yet.

@i-norden
Copy link

And so now the issue appears to be that we can't find a concrete implementation that satisfies tx.TxExtensionOptionI, and based on the convo this morning that is probably because we need to implement one ourselves.

@roysc
Copy link
Collaborator

roysc commented May 12, 2022

I registered ExtensionOptionsEthereumTx as a TxExtensionOptionI implementation, which has appeased the middleware for long enough to expose some separate issues: first with Tx decoding, which I fixed by refactoring the middleware. Now, the gas limit is being hit on the evm keeper's param store, triggering a panic.

WIP at #39.

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

3 participants