commit b059cf4b16663ef2db70a2c2d7af0a6ba5ce2688
parent e923ce6675b34259fd52f704bb502208df519cd6
Author: Florian Dold <florian@dold.me>
Date: Thu, 7 Mar 2024 13:22:34 +0100
pass wire fees to coin selection, logging
Diffstat:
2 files changed, 15 insertions(+), 2 deletions(-)
diff --git a/packages/taler-wallet-core/src/coinSelection.ts b/packages/taler-wallet-core/src/coinSelection.ts
@@ -185,6 +185,10 @@ export async function selectPayCoins(
): Promise<SelectPayCoinsResult> {
const { contractTermsAmount, depositFeeLimit, wireFeeLimit } = req;
+ if (logger.shouldLogTrace()) {
+ logger.trace(`selecting coins for ${j2s(req)}`);
+ }
+
return await wex.db.runReadOnlyTx(
[
"coinAvailability",
@@ -207,6 +211,8 @@ export async function selectPayCoins(
},
);
+ logger.trace(`wire fees per exchange: ${j2s(wireFeesPerExchange)}`);
+
const coinRes: SelectedCoin[] = [];
const currency = contractTermsAmount.currency;
@@ -274,6 +280,10 @@ export async function selectPayCoins(
tally,
);
+ if (logger.shouldLogTrace()) {
+ logger.trace(`coin selection: ${j2s(coinSel)}`);
+ }
+
return {
type: "success",
coinSel,
@@ -766,6 +776,7 @@ async function selectPayCandidates(
if (!wire) {
continue;
}
+ wfPerExchange[exchange.baseUrl] = wire.wireFee;
}
// 3. exchange is trusted in the exchange list or auditor list
diff --git a/packages/taler-wallet-core/src/host-impl.node.ts b/packages/taler-wallet-core/src/host-impl.node.ts
@@ -110,8 +110,10 @@ async function makeSqliteDb(
): Promise<MakeDbResult> {
BridgeIDBFactory.enableTracing = false;
const imp = await createNodeSqlite3Impl();
+ const dbFilename = args.persistentStoragePath ?? ":memory:";
+ logger.info(`using database ${dbFilename}`);
const myBackend = await createSqliteBackend(imp, {
- filename: args.persistentStoragePath ?? ":memory:",
+ filename: dbFilename,
});
myBackend.enableTracing = false;
if (process.env.TALER_WALLET_DBSTATS) {
@@ -159,7 +161,7 @@ export async function createNativeWalletHost2(
logger.info("using JSON file DB backend (slow, only use for testing)");
dbResp = await makeFileDb(args);
} else {
- logger.info("using sqlite3 DB backend");
+ logger.info(`using sqlite3 DB backend`);
dbResp = await makeSqliteDb(args);
}