Updating Meta Info

TL;DR : Updated Pool Meta information need help generating the transaction.

I wanted to update the meta information for my successfully registered stake pool.
(Cardano PoolTool - The most comprehensive staking statistics for Cardano on the web.)

Yet, now when I want to validate the registration on pool.vet

I get “Metadata hash 2881d1f617e4a3986ffd2344c06ccfb65fed2f0e6f9dced0d0c18015bc3cdae8 doesn’t match registered hash abe76ce9edd9416a927c2aaa44c4a8a7d74e56fb6e75a4babc3fc059b4f9dfd6”

Which makes sense, since the files have changed. Based on the documentation, I now need to create a new transaction with the new pool/deleg certs to validate the new data and pay my registration fee, again.
So far so good. Yet, I am not sure how to build this transaction.

Does anyone has a good link here?

Thanks, Jan

Registering and updating the pool is the same, the only difference is you will not need to pay the 500 ADA deposit again and you must use the same pool cold keys.

I had done this, stakePoolDeposit set to 0, transaction went through successfully, but the update doesn’t seem to go through. I still get the same error message. Maybe I just wait and use the time to make a write-up outlining what needs to be done in these cases.

Would you know if the hash is changing with every change in the extended poolMetaData ?
I.e., if the address changes, will the hash change as well? By right it should.

If any of the --metadata-url JSON changes you will need to generate and submit the new hash. However, if the extended changes in a separate JSON file, then you do not need to generate or submit a hash.

It’s possible to check SMASH has the updated data too, eg: https://smash.cardano-mainnet.iohk.io/api/v1/metadata/2518d909e839ee7dd775c933172a58bbc3339ecf0d6af7d1146b5f47/c82a91b6f636a470eb4842252d3479feb4560a80b8583d31ef014c8d46ac4959

Where /metadata/pool-id/hash

You can also query ledger state with cardano-cli and review what is on the blockchain.

Smash doesn’t have the updated information. Since I believe I did all the right steps. I’d assume I just wait a few more hours to see if this resolved in this way.

Yes, SMASH requires some time to put metadata in cache, then Daedalus needs to run maintenance to fetch updated metadata.

I would recommend doing a wget of the uploaded JSON and generating the hash from it too. Some websites like GitHub add/remove control line feeds etc which changes the expected hash result.


That’s probably the step that I missed.

you can check the result of the re-registration in the ledger-state itself by grepping the hash:

cardano-cli query ledger-state --mainnet > ledger-state.json
grep <hash_id> ledger-state.json

if no success then you can check the actual registration info of your node by grepping the pool_id

grep -A20 <pool_id> ledger-state.json

but @SPAAS suggestion (wget) will help you out definitely:)

1 Like

That was the step that I missed.


Now it’s an all pass! Many thanks.

“The stake pool passed all tests.”



Hello - can you clarify what the missing step was for you?

I’m having the same issue and trying to wget the URL - however I’m not sure how to generate the hash from it

the statement that I used was wget -O poolMetaData.json shorturl.at/gknzC

Thank you. This is what I got - not quite sure how to interpret this.