Skip to content
This repository has been archived by the owner on Aug 2, 2022. It is now read-only.

New accounts fail lookups via get_accounts_by_authorizers #9278

Closed
aaroncox opened this issue Jul 3, 2020 · 8 comments
Closed

New accounts fail lookups via get_accounts_by_authorizers #9278

aaroncox opened this issue Jul 3, 2020 · 8 comments

Comments

@aaroncox
Copy link
Contributor

aaroncox commented Jul 3, 2020

It's recently come to our attention that the new v1/chain/get_accounts_by_authorizers API endpoint will stop updating and adding new key/auth -> account associations to its dataset. All previous lookups will remain functional, but any account created after an unknown period in time (or event) will not be returned unless nodeos is restarted.

We have seen his both on our EOS API infrastructure as well as on Jungle 3. Here are some example calls against our API infrastructure that illustrate the account not returning in v1/chain/get_accounts_by_authorizers, but returning results through v1/history/get_key_accounts.

curl https://jungle3.greymass.com/v1/chain/get_accounts_by_authorizers -d '{"keys": ["EOS7LQUHUHPNLY4T8gbZjtWhxqTNw8ukzqTvrk12uchnHM1gAaR71"]}'

curl https://jungle3.greymass.com/v1/history/get_key_accounts -d '{"public_key":"EOS7LQUHUHPNLY4T8gbZjtWhxqTNw8ukzqTvrk12uchnHM1gAaR71"}'

We will leave our Jungle 3 API running in this state if it helps further troubleshoot this issue - and feel free to create new Jungle 3 accounts and observe how they are returned by the v1/history plugin and not the new v1/chain plugin.

@aaroncox
Copy link
Contributor Author

aaroncox commented Jul 6, 2020

To add additional context, it looks like it's any new accounts after the new API endpoint initializes.

I performed the following steps over the weekend while experimenting more:

  • Restarted nodeos w/ --enable-account-queries=true
  • Immediately created a new account.
  • Performed key lookup using get_accounts_by_authorizers, the account is not found.
  • Performed key lookup using get_key_accounts, the account name was returned.
  • Awaited irreversibility, still not found via get_accounts_by_authorizers.
  • Restarted nodeos again w/ --enable-account-queries=true
  • Account can now be found w/ get_accounts_by_authorizers.

Hope that helps!

@apolloaotc
Copy link

{
"account_names": []
}

@nsjames
Copy link
Contributor

nsjames commented Aug 7, 2020

bump, is there an ETA on this?

@nickjjzhao
Copy link
Contributor

nickjjzhao commented Aug 7, 2020

Hello nsjames,

Sorry for the late response. I am actively working on this issue, and trying to fix it asap. Please feel free to let me know if you have any other concerns. Thanks! – Jingjun

@matthewdarwin
Copy link

Is suppose this issue is resolved now?

#9382 (2.0.x)
#9384 (develop)

@ashuralyk
Copy link

I've found this bug as well, it's totally the same with aaroncox's. And I'm also concerned about wether this bug resolved now?

@b1bart
Copy link
Contributor

b1bart commented Sep 8, 2020

Is suppose this issue is resolved now?

We consider this issue resolved in the PRs you have listed, we will keep the issue open until the next 2.0.x point release when it is officially available in a stable release.

If you are able, please build a version with that patch integrated and see if the issue(s) persist. We have not been able to reproduce after the patch.

@aaroncox
Copy link
Contributor Author

aaroncox commented Sep 10, 2020

I've merged the patch into both our EOS and Jungle 3 APIs and done some initial tests - new accounts seem to be detected while it's running. I'll continue to monitor on our end and hopefully this will be the end of all these restarts! 👍

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

No branches or pull requests

8 participants