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
The above is not a problem per se as the error is caught. However, the getWalletPublicKey uses a backoff retry mechanism inside so the final throw is made after 3 internal retries which takes time and contributes to the long execution time of the entire process:
The solution is simple. The backoffRetrier function should not retry if the contract call reverts with Wallet with the given ID has not been registered error. This can be achieved by passing a custom errorMatcher argument to this specific backoffRetrier call:
If there are closed/terminated wallets in the system, the redemption process takes a long time. This is what happens:
findWalletForRedemption
function must iterate over all wallets to check which one can handle the redemption:tbtc-v2/typescript/src/services/redemptions/redemptions-service.ts
Line 127 in 51094e4
wallets
to fetch data of the particular wallet:tbtc-v2/typescript/src/lib/ethereum/bridge.ts
Line 583 in 51094e4
wallets
function callsgetWalletCompressedPublicKey
under the hood:tbtc-v2/typescript/src/lib/ethereum/bridge.ts
Line 607 in 51094e4
getWalletCompressedPublicKey
throws while callinggetWalletPublicKey
:tbtc-v2/typescript/src/lib/ethereum/bridge.ts
Line 521 in 51094e4
getWalletPublicKey
uses a backoff retry mechanism inside so the final throw is made after 3 internal retries which takes time and contributes to the long execution time of the entire process:tbtc-v2/typescript/src/lib/ethereum/wallet-registry.ts
Line 69 in 51094e4
The solution is simple. The
backoffRetrier
function should not retry if the contract call reverts withWallet with the given ID has not been registered
error. This can be achieved by passing a customerrorMatcher
argument to this specificbackoffRetrier
call:tbtc-v2/typescript/src/lib/utils/backoff.ts
Line 93 in 51094e4
The text was updated successfully, but these errors were encountered: