taler-typescript-core

Wallet core logic and WebUIs for various components
Log | Files | Refs | Submodules | README | LICENSE

commit a60061788fc9fd0cc60472db5e3ef68d34854441
parent 14103aa0750fd2874480a564b2f0be0932c13e21
Author: Florian Dold <florian.dold@gmail.com>
Date:   Wed, 22 Jan 2020 16:00:49 +0100

reset reserve retry timeout when forcing operation

Diffstat:
Msrc/operations/reserves.ts | 15+++++++++++++++
1 file changed, 15 insertions(+), 0 deletions(-)

diff --git a/src/operations/reserves.ts b/src/operations/reserves.ts @@ -61,6 +61,19 @@ import { getTimestampNow } from "../util/time"; const logger = new Logger("reserves.ts"); + +async function resetReserveRetry( + ws: InternalWalletState, + reservePub: string, +) { + await ws.db.mutate(Stores.reserves, reservePub, x => { + if (x.retryInfo.active) { + x.retryInfo = initRetryInfo(); + } + return x; + }); +} + /** * Create a reserve, but do not flag it as confirmed yet. * @@ -504,6 +517,8 @@ async function processReserveImpl( logger.trace("processReserve retry not due yet"); return; } + } else { + await resetReserveRetry(ws, reservePub); } logger.trace( `Processing reserve ${reservePub} with status ${reserve.reserveStatus}`,