2

I'm building a Golang client that interfaces with Polkadot and I want to better understand lookup errors.

In Polkadot block 10572717 the extrinsic at index 2 (subscan link 10572712-2) has failed with the Result "Failed (CannotLookup)".

It appears that the Extrinsic (which has the call Balances.Transfer_keep_alive) fails because of an invalid Destination identity: 0xE31Ad96c37604983899861ff171D7F51Ae074D81. It looks like the sender tried (and failed) repeatedly to send to this invalid account ID.

  1. Is 0xE31Ad96c37604983899861ff171D7F51Ae074D81 an invalid Destination identifier in Polkadot/Substrate?
  2. Is this the reason why the Extrinsic 10572717-2 failed?
  3. If I'm interested in balance transfer Extrinsics - I want to track account balances in our system - is it safe to ignore Failed results like this?

Thanks in advance

1 Answer 1

3
  1. Yes, 0xE31Ad96c37604983899861ff171D7F51Ae074D81 is not a valid Substrate / Polkadot address. It seems to be an Ethereum address.

  2. Yes, if you don't give a valid destination address, the transfer will certainly fail.

  3. To track the balance of accounts, you should not use the extrinsics, but instead the events which manifest from the extrinsics. All balance changes to accounts in Substrate will emit some events, for example the Transfer event. This event will only be emitted if the transfer completed successfully.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.