taler-typescript-core

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

commit 2a19c466c5a9ac7a9e9c0bc196e0b2afceb4db5e
parent dfe4e8a6c3dfe0ced087db871bfaac768d135947
Author: Florian Dold <florian@dold.me>
Date:   Wed,  8 Jan 2025 15:28:51 +0100

-logging

Diffstat:
Mpackages/taler-wallet-core/src/query.ts | 14+++++++++-----
1 file changed, 9 insertions(+), 5 deletions(-)

diff --git a/packages/taler-wallet-core/src/query.ts b/packages/taler-wallet-core/src/query.ts @@ -110,7 +110,7 @@ function requestToPromise(req: IDBRequest): Promise<any> { logger.warn("DB request failed, transaction aborted"); } else { logger.error(`error in DB request: ${req.error}`); - logger.error(`Request failed: ${stack}`); + logger.error(`Request failed: ${stack.stack ?? stack}`); } reject(req.error); }; @@ -619,7 +619,7 @@ function runTx<Arg, Res>( const msg = "BUG: transaction closed before transaction function returned"; logger.error(msg); - logger.error(`${stack.stack}`); + logger.error(`${stack.stack ?? stack}`); reject(Error(msg)); } else { resolve(funResult); @@ -636,7 +636,7 @@ function runTx<Arg, Res>( return; } logger.error("error in transaction"); - logger.error(`${stack.stack}`); + logger.error(`${stack.stack ?? stack}`); const txError = tx.error; if (txError) { reject(txError); @@ -663,7 +663,7 @@ function runTx<Arg, Res>( aborted = true; unregisterOnCancelled(); logger.error(msg); - logger.error(`${stack.stack}`); + logger.error(`${stack.stack ?? stack}`); reject(new TransactionAbortedError(msg)); }; const resP = Promise.resolve().then(() => f(arg, tx)); @@ -674,6 +674,10 @@ function runTx<Arg, Res>( funResult = result; }) .catch((e) => { + if (cancellationToken.isCancelled) { + logger.trace("Ignoring failed transaction due to cancellation."); + return; + } if (e == TransactionAbort) { logger.trace("aborting transaction"); tx.abort(); @@ -682,7 +686,7 @@ function runTx<Arg, Res>( } else { transactionException = e; logger.error(`Transaction failed: ${safeStringifyException(e)}`); - logger.error(`${stack}`); + logger.error(`${stack.stack ?? stack}`); tx.abort(); } })