You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
…works (#5620)
### Description
One of the most common errors we see in the verification flow at the moment is transaction timeout, which is added by the Valora app and currently specified to 45 seconds.
We have observed a number of cases where a transaction timeout will occur, and then the transaction will continue and be mined successfully not too long after. Looking at a number of these events, raising the timeout period would appear to increase the success rate of transactions, provided the user is willing to wait. (In cases where they do not want to wait, they may cancel the action they are taking and the transaction will not be monitored further.)
In this PR, the timeout is increased to 90s, which I have observed will handle most of the cases where the timeout triggers on transaction that eventually end up being mined. This should be a useful measure to increase transaction reliability until we can revisit the sending flow to incorporate additional improvements.
### Other changes
* Add some comments to the verifications flow.
* Added a grace period to after initial transaction timeout to mitigate #5142.
* Change view call for balance fetch to select from redux state to avoid expensive view call.
* Log full transaction details in the `GethNativeBridgeWallet` to improve debugging in Sentry.
### Tested
Tested on iOS simulator to confirm that without the changes, transaction report as timeout after being backgrounded for more than 90s. With the grace period, I observed that the timeout did not occur. On my full-speed WiFi, it got the transaction confirmation within 1 second of returning from suspension. On simulated 3G, it confirmed within 3 seconds of returning to the background.
### Related issues
- Fixed#5353
- Mitigates #5142
### Backwards compatibility
100%
Some transactionTimeouts can be due to gas estimation latency or node connection issues. In investigation, increasing this timeout to 60s should cover most cases.
https://celo-org.slack.com/archives/C017SK5RBFS/p1600110565219600
Band-aid solution
The text was updated successfully, but these errors were encountered: