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

Pool is shown as UNKNOWN in delegator dashboards after metadata has been updated in a valid manner when past URLs are reused (even in alternation) #2164

Open
Straightpool opened this issue Jun 6, 2021 · 25 comments

Comments

@Straightpool
Copy link

Straightpool commented Jun 6, 2021

Internal/External
External otherwise.

Summary
Pool is shown as UNKNOWN for days in delegator dashboards after metadata has been updated in a valid manner when past URLs are reused, even when URLs are used in an alternate fashion.

Steps to reproduce
Steps to reproduce the behavior:

  1. Change pool description in the metadata on-chain in a valid manner using URL A
  2. Verify Daedalus has picked up the change
  3. Verify adapools.org has picked up the change
  4. Verify pooltool.io has picked up the change
  5. Verify cardanoscan.io has picked up the change
  6. Double check pool metadata settings at pool.vet
  7. Download metadata file from registered URL to shell with e.g. wget and double check hash with cardano-cli
  8. Double check there are no SMASH API errors
  9. Double check SMASH server is uptodate
  10. Check Yoroi delegation dashboard is OK
  11. Change pool description again using a new URL B and repeat steps 1 to 10
  12. Change pool description again reusing URL A and repeat steps 1 to 10 with new hash and new description
  13. Notice error in Yoroi Dashboard, pool is shown as UNKNOWN POOL (On Mobile "GO TO WEBSITE" Button is broken as well) for multiple days as Yoroi detects a hash mismatch between the new file content of URL A and the for URL A stored old hash and aborts
  14. Re-run modification transaction with no change in data with URL A
  15. UNKNOWN bug is fixed within 24 hours by submitting the transaction with the old URL twice

Expected behavior
Yoroi updates valid pool metadata in the same efficient manner as other wallets and tools by refreshing with the new hash and new description with a reused alternate URL, provided this URL has not been used in the current valid registration.

Screenshots and attachments
I had this issue with STR8 pool, ID: 000006d97fd0415d2dafdbb8b782717a3d3ff32f865792b8df7ddd00. I updated the description in metadata on June 5th 17:13 UTC:
image

Daedalus wallets I checked were quick to update (validating metdata hash) the description on the same day within minutes, as was adapools, pooltool, and cardanoscan I checked.

Pool.vet check was ok as well:
image

wget https://straightpool.github.io/about/poolmeta.json
cardano-cli stake-pool metadata-hash --pool-metadata-file poolmeta.json
returned the correct hash as well 45e9013747baa8d48f392a907b0299f519e8fd4eaa7453f1fcc70780148cfbf2

There were no SMASH API errors:
https://smash.cardano-mainnet.iohk.io/api/v1/errors/000006d97fd0415d2dafdbb8b782717a3d3ff32f865792b8df7ddd00
image

SMASH was up-to-date:
https://smash.cardano-mainnet.iohk.io/api/v1/metadata/000006d97fd0415d2dafdbb8b782717a3d3ff32f865792b8df7ddd00/45e9013747baa8d48f392a907b0299f519e8fd4eaa7453f1fcc70780148cfbf2
image

Yet, Yoroi showed UNKNOWN POOL to delegators in the Dashboard (in both Desktop and Android Yoroi wallets), the delegation list fed by adapools.org is fine
image
Check-ins with display of UNKOWN POOL:

  • Negative check on June 15th 18:11 UTC, more than 10 days
  • Resubmitted transaction on June 15th 21:30 UTC
  • Fixed: June 16th 06:20 UTC

Additional context
Instead of creating a new metadata file for each description change, I hosted two metadata files "poolmeta.json" and "poolmetadata.json" and alternate between those two, expecting this to work. When I switched to using "poolmeta.json" again (last use was in July 2020) it had a different description and hash from what the backend in Yoroi has seen previously.

The Yoroi backend detected a hash mismatch with the first modification run, Yoroi backend remembered the hash for the old version of URL A and expected the new file content of the old URL to match, this of course failed. The first run most likely updated the hash in the backend so after the next re-registration run the now updated stored hash for URL A matched the new file content.

As a workaround to avoid this issue with Yoroi dashboard the same URL for poolmeta data should never be re-used not even in an alternate fashion or if it is reused the modification transaction should be submitted twice in short succession.

The Yoroi backend uses a number of servers so if after the fix not all wallets show the new metadata correctly other servers shall fall in line in a few days at most as a pure caching issue remains.

@Straightpool Straightpool changed the title Pools is shown as UNKNOWN for days in delegator dashboards after metadata has been updated in a valid manner Pool is shown as UNKNOWN for days in delegator dashboards after metadata has been updated in a valid manner Jun 6, 2021
@eoswins
Copy link

eoswins commented Jun 6, 2021

My pool is having the same issue.

@adasquirrel01
Copy link

adasquirrel01 commented Jun 7, 2021

Exactly same issue our pool "ADASquirrel" Ticker [SQRL]
Pool vet output "ALL GREEN"

https://pool.vet/#c9a397b8aa1d963030999d4edfd0f809f290f9899c73dfa1ad3a6d70
Pool_01

Daedalus=OK

Yoroi PC (CHROME) = Unknown Pool
Pool_02

Yoroi Iphone = Unknown Pool
Pool_03

This is really frustrating, especially for a new little stake pool trying to find new delegators :-(

@adasquirrel01
Copy link

After some days ... Pool still unknown ... Any news ?

@eoswins
Copy link

eoswins commented Jun 8, 2021

My pool has recovered from the condition. I want to estimate it took around 5 days to recover.

@woodland-ada-pools
Copy link

woodland-ada-pools commented Jun 10, 2021

Been having the exact same issue with our pool ASPEN for the past few days. Is the solution to just wait?

-Just noticed the additional context in OP. Thanks for the detailed post and update! Really frustrating...

@adasquirrel01
Copy link

adasquirrel01 commented Jun 10, 2021

I think the solution is just waiting . . . but i think that there's some BUG !!! :-(
Not really fair for little stake pool trying to find new delegators :-(

@woodland-ada-pools
Copy link

Oh yea, @adasquirrel01 , we've been losing delegators in a steady stream for the past 36 hours or so. This may seem like a trivial UI bug to the Yoroi team, but we're losing a lot of hard-earned delegators due to this UI issue that neither Daedalus nor PoolTool have.

@eoswins
Copy link

eoswins commented Jun 10, 2021

I previously reported that the issue went away, but now it's back. The Yoroi wallet shows "Stake Pool Delegated UNKNOWN POOL" when delegated to my pool.

@MetaStakePool
Copy link

I see the issue via frontend as well; a delegator brought it up to my attention. Pool is still searchable from delegation list. but delegation-dashboard shows as unknown.

However, after just refreshing yoroi... at 9:46 EST it now shows the correct name and no longer says UNKNOWN POOL.

@adasquirrel01
Copy link

8 day . . . STAKE POOL IS STILL UNKNOWN !!!!!!

Still unknown on Yoroi mobile, stille unknown on Yoroi Desktop !!!

:-(

@Straightpool
Copy link
Author

8 day . . . STAKE POOL IS STILL UNKNOWN !!!!!!

Still unknown on Yoroi mobile, stille unknown on Yoroi Desktop !!!

:-(

Yes it is really a Yoroi backend issue. I have contacted the Yoroi team they are looking into this.

@adasquirrel01
Copy link

Thanks a lot ! We've just 12 little delegates so far, and i'm scared to loose some of them :-(

@Elite-Stake-Pool
Copy link

Hello all. Elite Stake Pool is experiencing the same issue with Elite Stake Pool 1. Our pool displays as unknown and is perfectly fine everywhere else (poolstats, pooltool, adapools, pool.pm, Daedalus etc)

We are very concerned that this will impact our delegate's confidence in the pool and will therefore potentially re-delegate elsewhere. We will keep an eye on this and report back when it rectifies but obviously, we don't want to see this every metadata change :(

Is there an update on this issue please?

@adasquirrel01
Copy link

adasquirrel01 commented Jun 15, 2021

From 12 to 11 Delegators now . . peoples start to loose trust in us . . . after 10 days !!! STILL UNKNOWN !! THIS IS CRAZY !!! THERE'S NO WAY TO SURVIVE AS LITTLE POOL :-(

poolunk

ANY UPDATES ??

@Straightpool
Copy link
Author

Straightpool commented Jun 15, 2021

Update: Last night I started debugging this with the very supportive Yoroi team, thank you for being on top of this! There are multiple reasons a pool can be displayed as UNKNOWN. The team is fully aware this is very frustrating. So far known and confirmed issues:

  1. Metadata file is invalid
  2. Metadata file is not yet fully synched through all caches

Normally, the issue fixes itself after a couple of days. By the principle of exclusion I try to identify what is unique to the Yoroi dashboard to cause this prolonged issue. Will update when I know more.

@Elite-Stake-Pool
Copy link

Is there any update from the Yoroi team directly? I have sent a support ticket to them but not heard anything. It would be nice to hear from Yoroi/Emurgo directly?

This issue is still impacting us and as stated the meta data file is not invalid. Pool.Vet shows it is ok, as does poolstats.org, pooltool.io, adapools, pool.pm, Daedalus etc)

@adasquirrel01
Copy link

If metadata is valid on Pool.vet . . . problem is 100% Related to CACHE !!! Now i see the pool on my smartphone (SQRL) but i still see UNKNOWN pool on the Desktop APP ! Hope this help !

@Elite-Stake-Pool
Copy link

fyi, our pool (Elite Stake Pool 1) shows as Unknown within the Chrome extension AND Android App AND IoS app. - The "Go to Website" button also does not work while the status is "Unknown Pool"

@Straightpool
Copy link
Author

fyi, our pool (Elite Stake Pool 1) shows as Unknown within the Chrome extension AND Android App AND IoS app. - The "Go to Website" button also does not work while the status is "Unknown Pool"

Yup same here, it is a Yoroi backend issue so two frontends to the same backend should behave the same.

@Straightpool
Copy link
Author

Straightpool commented Jun 16, 2021

I fixed the problem within 24 hours by re-running the modification transaction. Root cause for my issue has been isolated, issue updated.

@Straightpool Straightpool changed the title Pool is shown as UNKNOWN for days in delegator dashboards after metadata has been updated in a valid manner Pool is shown as UNKNOWN in delegator dashboards after metadata has been updated in a valid manner when past URLs are reused (even in alternation) Jun 16, 2021
@Elite-Stake-Pool
Copy link

Thank you for the update Straightpool

@woodland-ada-pools
Copy link

Same solution worked for us on the ASPEN pool. Thanks for the workaround @Straightpool ! We owe you some 🍻 at the next Cardano summit ;)

@vsubhuman
Copy link
Contributor

@Straightpool , thank you for the extremely detailed description and the reproduction instruction! 👍

@vsubhuman
Copy link
Contributor

Still blocked by the smash issue

@Straightpool
Copy link
Author

So now 3 years later, a delegator of mine just told me he gets "unknown pool" in Yoroi again. Last time I changed metadata url on my pool was 1,5 years ago.

Sure enough, checking one of my own wallets delegated to my pool I see this:

image

How can it be an "unknown pool" if it gets logo, saturation, ROA and pool size correct?

Looks like a variant of the old bug? Maybe related somehow?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

9 participants