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

Add a new check flag to cover all recorded addresses #54

Closed
CipherWang opened this issue Jul 15, 2020 · 1 comment · Fixed by #56
Closed

Add a new check flag to cover all recorded addresses #54

CipherWang opened this issue Jul 15, 2020 · 1 comment · Fixed by #56
Labels
enhancement New feature or request

Comments

@CipherWang
Copy link

Is your feature request related to a problem? Please describe.
When checking the balance reconciliation, the rosetta-cli has only two possible working patterns. One pattern is checking the active addresses related to the operations in new blocks, the other one is checking the inactive addresses randomly selected from previous records. But even after a very long time, the rosetta-cli only randomly chooses a limited subset of the addresses, it cannot cover all possible addresses.

Describe the solution you'd like
Maybe we could add a new --all-address-check flag to the check command to check them all. It will start the full checking process after the rosetta-cli check runs to the tip.

@patrick-ogrady
Copy link
Contributor

Thanks for posting about this @CipherWang!

@metajack posted about a similar issue in coinbase/mesh-sdk-go#65 and I merged a ton of improvements to the reconciler that greatly improve the inactive reconciliation loop in coinbase/mesh-sdk-go#66.

I also added a new flag in #56 to make it possible to check all inactive addresses at each block! To perform this "all addresses check" you would run rosetta-cli check --inactive-reconciliation-frequency=1 (adding --lookup-balance-by-block=false if your implementation doesn't support historical balance lookup). If you enable this flag, I'd also recommend setting --inactive-reconciliation-concurrency=64 (as the default of 4 will not be sufficient if there are many accounts).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Development

Successfully merging a pull request may close this issue.

2 participants