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

Tessera timeout can cause inconsistent state when fetching private state #1574

Closed
antonydenyer opened this issue Nov 28, 2022 · 1 comment · Fixed by #1575
Closed

Tessera timeout can cause inconsistent state when fetching private state #1574

antonydenyer opened this issue Nov 28, 2022 · 1 comment · Fixed by #1575

Comments

@antonydenyer
Copy link
Contributor

When processing private transactions if a private payload is missing from tessera goquorum will ignore the problem and continue on the assumption that you are not a party to that private transaction. This means that private senders need to ensure that the private payload is in the receivers tessera instance before submitting the ethereum transaction. If, however, goquroum can not communicate with tessera then this is a different problem, you can not know if you should or shouldn't have access to a transaction.

Expected behaviour

When communication with tessera fails, either a 5xx error or a transport layer problem the GoQ node should panic and exit or attempt to retry.

Actual behaviour

It is treated as if the transaction is not found.

This error https://github.com/ConsenSys/quorum/blob/master/private/engine/tessera/tessera.go#L321 is passed up the call stack but is not handled correctly.

@yorkerhodes3
Copy link

When can we get the exit/retry logic developed and tested?

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

Successfully merging a pull request may close this issue.

2 participants