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

Could not decode MultiSignature, variant doesn't exist #271

Closed
ayushmishra2005 opened this issue Nov 11, 2021 · 8 comments
Closed

Could not decode MultiSignature, variant doesn't exist #271

ayushmishra2005 opened this issue Nov 11, 2021 · 8 comments

Comments

@ayushmishra2005
Copy link

This related to #269

@nukemandan As you mentioned here, after introducing scale-info, We don't need to add custom types since Settings>>Developer got removed from polkadot js apps.

I tried to execute extrinsic after connecting with local relaychain. My parachain is able to connect with relay chain and able to produce blocks but not able to perform extrinsic.

I am getting below error on UI console:

submitAndWatchExtrinsic(extrinsic: Extrinsic): ExtrinsicStatus:: 1002: Verification Error: Runtime error: Execution failed: ApiError(FailedToConvertParameter { function: "validate_transaction", parameter: "tx", error: Error { cause: None, desc: "Could not decode MultiSignature, variant doesn't exist" } }): RuntimeApi, Execution failed: ApiError, FailedToConvertParameter { function: \"validate_transaction\", parameter: \"tx\", error: Error { cause: None, desc: \"Could not decode MultiSignature, variant doesn't exist\" } }

Screenshot 2021-11-11 at 6 14 28 PM

Screenshot 2021-11-11 at 6 14 35 PM

@nuke-web3
Copy link
Contributor

nuke-web3 commented Nov 11, 2021

What branch are you working on here to inspect? https://github.com/DataHighway-DHX/node/branches
I see substrate V3 used in master, that will not work with this.

Have you derived TypeInfo for all your pallets? example here

#[derive(Clone, Encode, Decode, Eq, PartialEq, RuntimeDebug, MaxEncodedLen, TypeInfo)]
pub struct SomeStorageStruct<Balance, AccountId, DepositBalance> {...}

@ayushmishra2005
Copy link
Author

Hi @nukemandan Sorry I forgot to give branch name. Here is branch https://github.com/DataHighway-DHX/node/tree/polkadotv0.9.11

Please see here example https://github.com/DataHighway-DHX/node/blob/polkadotv0.9.11/pallets/roaming/roaming-accounting-policies/src/lib.rs#L52. I have made the same changes at all corresponding places.

Without this TypeInfo change, pallets won't get compiled. I followed this PR https://github.com/substrate-developer-hub/substrate-parachain-template/pull/80 to update it to polkadot 0.9.11.

@ayushmishra2005
Copy link
Author

@nukemandan did you get a chance to look into it?

@nuke-web3
Copy link
Contributor

have you tried using an older version of the apps ui?
more info here
polkadot-developers/substrate-docs#583

@ayushmishra2005
Copy link
Author

@nukemandan I didn't try with older version. Lets assume it would work with older version with custom type definition but at the end we have to use latest UI https://polkadot.js.org/apps/#/explorer.

What is the solution to make it work with latest version of UI?

@nuke-web3
Copy link
Contributor

ensure you have the updated client and runtime that have scale info. clear you browser cache and cookies for the ui on all versions (if you have accounts setup, back them up first of course!)

@ayushmishra2005
Copy link
Author

@nukemandan I did the same. I started local relay chain using https://docs.substrate.io/tutorials/v3/cumulus/start-relay/. I am able to connect my parachain. Parachain is also able to produce block.

I deleted browser cache and cookies from Chrome and Firfox but still facing same issue.

@ayushmishra2005
Copy link
Author

@nukemandan I am still debugging this issue from my side. I also tested Substrate Parachain Template with Local relaychain. Its working fine and able to execute extrinsic. However, I found one thing.

I tested Balance extrinsic and tried to transfer balance. But I found differences in fields and UI

image

Here is UI of Datahighway Parachain,

image

As you can see, In substrate parachain template, type of dest is MultiAddress but in Datahighway, it is AccountId32.

Looks like this is the issue.

I have fixed it. Here is fix commit DataHighway-DHX/node@401c1a0

But I still didn't get how it was working with Polkadot 0.9.10 and failing with 0.9.11.

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

2 participants