commit ee826c157605177195b6fd6c0c5c172c1066368a parent b57f850195d951db1de88c97e15a669e5d2e805b Author: Florian Dold <florian@dold.me> Date: Tue, 14 Jan 2025 21:16:47 +0100 wallet-core: refine confusing log Diffstat:
| M | packages/taler-wallet-core/src/exchanges.ts | | | 19 | ++++++++++++++++++- |
1 file changed, 18 insertions(+), 1 deletion(-)
diff --git a/packages/taler-wallet-core/src/exchanges.ts b/packages/taler-wallet-core/src/exchanges.ts @@ -255,7 +255,24 @@ async function getExchangeRecordsInternal( } const dp = r.detailsPointer; if (!dp) { - logger.warn(`no exchange details pointer for ${exchangeBaseUrl}`); + switch (r.updateStatus) { + case ExchangeEntryDbUpdateStatus.Ready: + case ExchangeEntryDbUpdateStatus.ReadyUpdate: + case ExchangeEntryDbUpdateStatus.OutdatedUpdate: + logger.error( + `Database invariant violated: no exchange details in wallet database for ${exchangeBaseUrl}.`, + ); + break; + case ExchangeEntryDbUpdateStatus.Initial: + case ExchangeEntryDbUpdateStatus.InitialUpdate: + case ExchangeEntryDbUpdateStatus.Suspended: + case ExchangeEntryDbUpdateStatus.UnavailableUpdate: + // In these states, not having exchange details in the wallet DB + // is expected. + break; + default: + assertUnreachable(r.updateStatus); + } return; } const { currency, masterPublicKey } = dp;