From b1fa2ef30ba9cc70d8561e1dec9d513c7cc2d889 Mon Sep 17 00:00:00 2001 From: Rusty Russell Date: Thu, 14 Aug 2025 10:57:56 +0930 Subject: [PATCH] bkpr: remove different currency support. We still output the fields, they're just always the currency of the node. Signed-off-by: Rusty Russell Changelog-Changed: Plugins: `bookkeeper` now explicitly assumes every transaction is in the same currency as the node (true unless you added manually) --- onchaind/test/run-grind_feerate-bug.c | 8 ----- onchaind/test/run-grind_feerate.c | 8 ----- plugins/bkpr/bookkeeper.c | 33 ++++---------------- plugins/bkpr/chain_event.c | 2 +- plugins/bkpr/chain_event.h | 3 -- plugins/bkpr/channel_event.c | 5 ++-- plugins/bkpr/channel_event.h | 4 --- plugins/bkpr/incomestmt.c | 42 ++++++++++++-------------- plugins/bkpr/incomestmt.h | 1 - plugins/bkpr/onchain_fee.c | 3 +- plugins/bkpr/onchain_fee.h | 3 -- plugins/bkpr/recorder.c | 43 +++------------------------ plugins/bkpr/recorder.h | 1 - plugins/bkpr/test/run-bkpr_db.c | 1 - plugins/bkpr/test/run-recorder.c | 15 ---------- 15 files changed, 34 insertions(+), 138 deletions(-) diff --git a/onchaind/test/run-grind_feerate-bug.c b/onchaind/test/run-grind_feerate-bug.c index 539fb0883..ff5ab45ef 100644 --- a/onchaind/test/run-grind_feerate-bug.c +++ b/onchaind/test/run-grind_feerate-bug.c @@ -134,14 +134,6 @@ struct chain_coin_mvt *new_coin_external_spend(const tal_t *ctx UNNEEDED, struct mvt_tags tags) { fprintf(stderr, "new_coin_external_spend called!\n"); abort(); } -/* Generated stub for new_coin_wallet_deposit */ -struct chain_coin_mvt *new_coin_wallet_deposit(const tal_t *ctx UNNEEDED, - const struct bitcoin_outpoint *outpoint UNNEEDED, - u32 blockheight UNNEEDED, - struct amount_sat amount UNNEEDED, - struct mvt_tags tags) - -{ fprintf(stderr, "new_coin_wallet_deposit called!\n"); abort(); } /* Generated stub for new_onchain_htlc_deposit */ struct chain_coin_mvt *new_onchain_htlc_deposit(const tal_t *ctx UNNEEDED, const struct bitcoin_outpoint *outpoint UNNEEDED, diff --git a/onchaind/test/run-grind_feerate.c b/onchaind/test/run-grind_feerate.c index ae9422880..6ff7c6c35 100644 --- a/onchaind/test/run-grind_feerate.c +++ b/onchaind/test/run-grind_feerate.c @@ -184,14 +184,6 @@ struct chain_coin_mvt *new_coin_external_spend(const tal_t *ctx UNNEEDED, struct mvt_tags tags) { fprintf(stderr, "new_coin_external_spend called!\n"); abort(); } -/* Generated stub for new_coin_wallet_deposit */ -struct chain_coin_mvt *new_coin_wallet_deposit(const tal_t *ctx UNNEEDED, - const struct bitcoin_outpoint *outpoint UNNEEDED, - u32 blockheight UNNEEDED, - struct amount_sat amount UNNEEDED, - struct mvt_tags tags) - -{ fprintf(stderr, "new_coin_wallet_deposit called!\n"); abort(); } /* Generated stub for new_onchain_htlc_deposit */ struct chain_coin_mvt *new_onchain_htlc_deposit(const tal_t *ctx UNNEEDED, const struct bitcoin_outpoint *outpoint UNNEEDED, diff --git a/plugins/bkpr/bookkeeper.c b/plugins/bkpr/bookkeeper.c index af398726a..abf845ba4 100644 --- a/plugins/bkpr/bookkeeper.c +++ b/plugins/bkpr/bookkeeper.c @@ -316,7 +316,8 @@ static struct command_result *json_inspect(struct command *cmd, ev->output_value); json_add_amount_msat(res, "credit_msat", ev->credit); - json_add_string(res, "currency", ev->currency); + json_add_string(res, "currency", + chainparams->lightning_hrp); if (ev->origin_acct) json_add_string(res, "originating_account", ev->origin_acct); @@ -333,7 +334,7 @@ static struct command_result *json_inspect(struct command *cmd, "output_value_msat", ev->output_value); json_add_string(res, "currency", - ev->currency); + chainparams->lightning_hrp); } json_add_string(res, "spend_tag", ev->tag); json_add_txid(res, "spending_txid", @@ -628,7 +629,6 @@ struct new_account_info { struct account *acct; struct amount_msat curr_bal; u32 timestamp; - char *currency; }; static void try_update_open_fees(struct command *cmd, @@ -709,7 +709,6 @@ static bool new_missed_channel_account(struct command *cmd, const char *buf, const jsmntok_t *result, struct account *acct, - const char *currency, u64 timestamp) { struct chain_event *chain_ev; @@ -762,7 +761,6 @@ static bool new_missed_channel_account(struct command *cmd, ok = amount_msat_add(&chain_ev->output_value, amt, remote_amt); assert(ok); - chain_ev->currency = tal_strdup(chain_ev, currency); chain_ev->origin_acct = NULL; /* 2s before the channel opened, minimum */ chain_ev->timestamp = timestamp - 2; @@ -821,7 +819,6 @@ static bool new_missed_channel_account(struct command *cmd, push_credit, push_debit, AMOUNT_MSAT(0), - currency, NULL, 0, timestamp - 1); log_channel_event(db, acct, chan_ev); @@ -905,7 +902,6 @@ static char *msat_find_diff(struct amount_msat balance, } static void log_journal_entry(struct account *acct, - const char *currency, u64 timestamp, struct amount_msat credit_diff, struct amount_msat debit_diff) @@ -923,7 +919,6 @@ static void log_journal_entry(struct account *acct, credit_diff, debit_diff, AMOUNT_MSAT(0), - currency, NULL, 0, timestamp); db_begin_transaction(db); @@ -959,7 +954,6 @@ static struct command_result *listpeerchannels_multi_done(struct command *cmd, if (!new_missed_channel_account(cmd, buf, result, info->acct, - info->currency, info->timestamp)) { plugin_log(cmd->plugin, LOG_BROKEN, "Unable to find account %s in listpeerchannels", @@ -981,7 +975,6 @@ static struct command_result *listpeerchannels_multi_done(struct command *cmd, plugin_err(cmd->plugin, "%s", err); log_journal_entry(info->acct, - info->currency, info->timestamp - 1, credit_diff, debit_diff); } @@ -1068,17 +1061,14 @@ static struct command_result *json_balance_snapshot(struct command *cmd, json_for_each_arr(i, acct_tok, accounts_tok) { struct account *acct; struct amount_msat snap_balance, credit, debit, credit_diff, debit_diff; - char *acct_name, *currency; + char *acct_name; bool existed; err = json_scan(cmd, buf, acct_tok, "{account_id:%" - ",balance_msat:%" - ",coin_type:%}", + ",balance_msat:%}", JSON_SCAN_TAL(tmpctx, json_strdup, &acct_name), - JSON_SCAN(json_to_msat, &snap_balance), - JSON_SCAN_TAL(tmpctx, json_strdup, - ¤cy)); + JSON_SCAN(json_to_msat, &snap_balance)); if (err) plugin_err(cmd->plugin, "`balance_snapshot` payload did not" @@ -1129,8 +1119,6 @@ static struct command_result *json_balance_snapshot(struct command *cmd, info->acct = tal_steal(info, acct); info->curr_bal = snap_balance; info->timestamp = timestamp_now; - info->currency = - tal_strdup(info, currency); tal_arr_expand(&new_accts, info); continue; @@ -1155,7 +1143,6 @@ static struct command_result *json_balance_snapshot(struct command *cmd, credit_diff, debit_diff, AMOUNT_MSAT(0), - currency, NULL, 0, timestamp); @@ -1372,7 +1359,6 @@ listpeerchannels_done(struct command *cmd, if (new_missed_channel_account(cmd, buf, result, info->acct, - info->ev->currency, info->ev->timestamp)) { db_begin_transaction(db); account_get_credit_debit(cmd->plugin, db, info->acct->name, @@ -1389,7 +1375,6 @@ listpeerchannels_done(struct command *cmd, plugin_err(cmd->plugin, "%s", err); log_journal_entry(info->acct, - info->ev->currency, info->ev->timestamp - 1, credit_diff, debit_diff); } else @@ -1509,7 +1494,6 @@ parse_and_log_chain_move(struct command *cmd, e->credit = credit; e->debit = debit; - e->currency = tal_steal(e, coin_type); e->timestamp = timestamp; e->tag = mvt_tag_str(tags[0]); e->desc = tal_steal(e, desc); @@ -1671,7 +1655,6 @@ parse_and_log_channel_move(struct command *cmd, e->credit = credit; e->debit = debit; - e->currency = tal_steal(e, coin_type); e->timestamp = timestamp; e->tag = mvt_tag_str(tags[0]); e->desc = tal_steal(e, desc); @@ -1747,7 +1730,6 @@ static struct command_result *json_utxo_deposit(struct command *cmd, const char ",transfer_from:%" ",outpoint:%" ",amount_msat:%" - ",coin_type:%" ",timestamp:%" ",blockheight:%" "}}}", @@ -1755,7 +1737,6 @@ static struct command_result *json_utxo_deposit(struct command *cmd, const char JSON_SCAN_TAL(tmpctx, json_strdup, &ev->origin_acct), JSON_SCAN(json_to_outpoint, &ev->outpoint), JSON_SCAN(json_to_msat, &ev->credit), - JSON_SCAN_TAL(tmpctx, json_strdup, &ev->currency), JSON_SCAN(json_to_u64, &ev->timestamp), JSON_SCAN(json_to_u32, &ev->blockheight)); @@ -1824,7 +1805,6 @@ static struct command_result *json_utxo_spend(struct command *cmd, const char *b ",outpoint:%" ",spending_txid:%" ",amount_msat:%" - ",coin_type:%" ",timestamp:%" ",blockheight:%" "}}}", @@ -1832,7 +1812,6 @@ static struct command_result *json_utxo_spend(struct command *cmd, const char *b JSON_SCAN(json_to_outpoint, &ev->outpoint), JSON_SCAN(json_to_txid, ev->spending_txid), JSON_SCAN(json_to_msat, &ev->debit), - JSON_SCAN_TAL(tmpctx, json_strdup, &ev->currency), JSON_SCAN(json_to_u64, &ev->timestamp), JSON_SCAN(json_to_u32, &ev->blockheight)); diff --git a/plugins/bkpr/chain_event.c b/plugins/bkpr/chain_event.c index a8e75028c..7f49a5e79 100644 --- a/plugins/bkpr/chain_event.c +++ b/plugins/bkpr/chain_event.c @@ -13,7 +13,7 @@ void json_add_chain_event(struct json_stream *out, struct chain_event *ev) json_add_string(out, "tag", ev->tag); json_add_amount_msat(out, "credit_msat", ev->credit); json_add_amount_msat(out, "debit_msat", ev->debit); - json_add_string(out, "currency", ev->currency); + json_add_string(out, "currency", chainparams->lightning_hrp); json_add_outpoint(out, "outpoint", &ev->outpoint); if (ev->spending_txid) diff --git a/plugins/bkpr/chain_event.h b/plugins/bkpr/chain_event.h index 28e147502..e04ba6f4a 100644 --- a/plugins/bkpr/chain_event.h +++ b/plugins/bkpr/chain_event.h @@ -47,9 +47,6 @@ struct chain_event { /* Total 'amount' of output on this chain event */ struct amount_msat output_value; - /* What token are the credit/debits? */ - const char *currency; - /* What time did the event happen */ u64 timestamp; diff --git a/plugins/bkpr/channel_event.c b/plugins/bkpr/channel_event.c index b1f5f9f2e..8a7b3c099 100644 --- a/plugins/bkpr/channel_event.c +++ b/plugins/bkpr/channel_event.c @@ -1,5 +1,6 @@ #include "config.h" +#include #include #include #include @@ -11,7 +12,6 @@ struct channel_event *new_channel_event(const tal_t *ctx, struct amount_msat credit, struct amount_msat debit, struct amount_msat fees, - const char *currency, struct sha256 *payment_id STEALS, u32 part_id, u64 timestamp) @@ -22,7 +22,6 @@ struct channel_event *new_channel_event(const tal_t *ctx, ev->credit = credit; ev->debit = debit; ev->fees = fees; - ev->currency = tal_strdup(ev, currency); ev->payment_id = tal_steal(ev, payment_id); ev->part_id = part_id; ev->timestamp = timestamp; @@ -43,7 +42,7 @@ void json_add_channel_event(struct json_stream *out, json_add_amount_msat(out, "debit_msat", ev->debit); if (!amount_msat_is_zero(ev->fees)) json_add_amount_msat(out, "fees_msat", ev->fees); - json_add_string(out, "currency", ev->currency); + json_add_string(out, "currency", chainparams->lightning_hrp); if (ev->payment_id) { json_add_sha256(out, "payment_id", ev->payment_id); json_add_u32(out, "part_id", ev->part_id); diff --git a/plugins/bkpr/channel_event.h b/plugins/bkpr/channel_event.h index 3cd8c67b3..c844f82d0 100644 --- a/plugins/bkpr/channel_event.h +++ b/plugins/bkpr/channel_event.h @@ -32,9 +32,6 @@ struct channel_event { /* Total 'fees' related to this channel event */ struct amount_msat fees; - /* What token are the credit/debits? */ - const char *currency; - /* Payment identifier (typically the preimage hash) */ struct sha256 *payment_id; @@ -56,7 +53,6 @@ struct channel_event *new_channel_event(const tal_t *ctx, struct amount_msat credit, struct amount_msat debit, struct amount_msat fees, - const char *currency, struct sha256 *payment_id STEALS, u32 part_id, u64 timestamp); diff --git a/plugins/bkpr/incomestmt.c b/plugins/bkpr/incomestmt.c index a47422afd..999088689 100644 --- a/plugins/bkpr/incomestmt.c +++ b/plugins/bkpr/incomestmt.c @@ -1,4 +1,5 @@ #include "config.h" +#include #include #include #include @@ -43,7 +44,6 @@ static struct income_event *chain_to_income(const tal_t *ctx, inc->credit = credit; inc->debit = debit; inc->fees = AMOUNT_MSAT(0); - inc->currency = tal_strdup(inc, ev->currency); inc->timestamp = ev->timestamp; inc->outpoint = tal_dup(inc, struct bitcoin_outpoint, &ev->outpoint); inc->desc = tal_strdup_or_null(inc, ev->desc); @@ -65,7 +65,6 @@ static struct income_event *channel_to_income(const tal_t *ctx, inc->credit = credit; inc->debit = debit; inc->fees = ev->fees; - inc->currency = tal_strdup(inc, ev->currency); inc->timestamp = ev->timestamp; inc->outpoint = NULL; inc->txid = NULL; @@ -86,7 +85,6 @@ static struct income_event *onchainfee_to_income(const tal_t *ctx, inc->credit = fee->debit; inc->debit = fee->credit; inc->fees = AMOUNT_MSAT(0); - inc->currency = tal_strdup(inc, fee->currency); inc->timestamp = fee->timestamp; inc->txid = tal_dup(inc, struct bitcoin_txid, &fee->txid); inc->outpoint = NULL; @@ -296,7 +294,6 @@ static struct onchain_fee **find_consolidated_fees(const tal_t *ctx, fee = tal(fee_sums, struct onchain_fee); fee->credit = sums[i]->fees_paid; fee->debit = AMOUNT_MSAT(0); - fee->currency = tal_steal(fee, sums[i]->currency); fee->acct_name = tal_steal(fee, sums[i]->acct_name); fee->txid = *sums[i]->txid; @@ -429,7 +426,7 @@ void json_add_income_event(struct json_stream *out, struct income_event *ev) json_add_string(out, "tag", ev->tag); json_add_amount_msat(out, "credit_msat", ev->credit); json_add_amount_msat(out, "debit_msat", ev->debit); - json_add_string(out, "currency", ev->currency); + json_add_string(out, "currency", chainparams->lightning_hrp); json_add_u64(out, "timestamp", ev->timestamp); if (ev->desc) @@ -454,16 +451,6 @@ const char *csv_filename(const tal_t *ctx, const struct csv_fmt *fmt) (unsigned long)time_now().ts.tv_sec); } -static char *convert_asset_type(struct income_event *ev) -{ - /* We use the bech32 human readable part which is "bc" - * for mainnet -> map to 'BTC' for cointracker */ - if (streq(ev->currency, "bc")) - return "btc"; - - return ev->currency; -} - static void cointrack_header(FILE *csvf) { fprintf(csvf, @@ -494,6 +481,15 @@ static char *income_event_cointrack_type(const struct income_event *ev) return ""; } +/* We use the bech32 human readable part which is "bc" + * for mainnet -> map to 'BTC' for cointracker */ +static const char *asset_type_name(void) +{ + if (streq(chainparams->lightning_hrp, "bc")) + return "btc"; + return chainparams->lightning_hrp; +} + static void cointrack_entry(const tal_t *ctx, FILE *csvf, struct income_event *ev) { /* Date mm/dd/yyyy HH:MM:SS UTC */ @@ -515,7 +511,7 @@ static void cointrack_entry(const tal_t *ctx, FILE *csvf, struct income_event *e if (!amount_msat_is_zero(ev->credit)) { fprintf(csvf, "%s", fmt_amount_msat_btc(ctx, ev->credit, false)); fprintf(csvf, ","); - fprintf(csvf, "%s", convert_asset_type(ev)); + fprintf(csvf, "%s", asset_type_name()); } else fprintf(csvf, ","); @@ -525,7 +521,7 @@ static void cointrack_entry(const tal_t *ctx, FILE *csvf, struct income_event *e if (!amount_msat_is_zero(ev->debit)) { fprintf(csvf, "%s", fmt_amount_msat_btc(ctx, ev->debit, false)); fprintf(csvf, ","); - fprintf(csvf, "%s", convert_asset_type(ev)); + fprintf(csvf, "%s", asset_type_name()); } else fprintf(csvf, ","); @@ -536,7 +532,7 @@ static void cointrack_entry(const tal_t *ctx, FILE *csvf, struct income_event *e && streq(ev->tag, mvt_tag_str(MVT_INVOICE))) { fprintf(csvf, "%s", fmt_amount_msat_btc(ctx, ev->fees, false)); fprintf(csvf, ","); - fprintf(csvf, "%s", convert_asset_type(ev)); + fprintf(csvf, "%s", asset_type_name()); } else fprintf(csvf, ","); @@ -587,7 +583,7 @@ static void koinly_entry(const tal_t *ctx, FILE *csvf, struct income_event *ev) if (!amount_msat_is_zero(ev->debit)) { fprintf(csvf, "%s", fmt_amount_msat_btc(ctx, ev->debit, false)); fprintf(csvf, ","); - fprintf(csvf, "%s", convert_asset_type(ev)); + fprintf(csvf, "%s", asset_type_name()); } else fprintf(csvf, ","); @@ -597,7 +593,7 @@ static void koinly_entry(const tal_t *ctx, FILE *csvf, struct income_event *ev) if (!amount_msat_is_zero(ev->credit)) { fprintf(csvf, "%s", fmt_amount_msat_btc(ctx, ev->credit, false)); fprintf(csvf, ","); - fprintf(csvf, "%s", convert_asset_type(ev)); + fprintf(csvf, "%s", asset_type_name()); } else fprintf(csvf, ","); @@ -609,7 +605,7 @@ static void koinly_entry(const tal_t *ctx, FILE *csvf, struct income_event *ev) && streq(ev->tag, mvt_tag_str(MVT_INVOICE))) { fprintf(csvf, "%s", fmt_amount_msat_btc(ctx, ev->fees, false)); fprintf(csvf, ","); - fprintf(csvf, "%s", convert_asset_type(ev)); + fprintf(csvf, "%s", asset_type_name()); } else fprintf(csvf, ","); @@ -728,7 +724,7 @@ static void harmony_entry(const tal_t *ctx, FILE *csvf, struct income_event *ev) fprintf(csvf, ","); /* ",Asset" */ - fprintf(csvf, "%s", convert_asset_type(ev)); + fprintf(csvf, "%s", asset_type_name()); fprintf(csvf, ","); /* ",Transaction ID" */ @@ -794,7 +790,7 @@ static void quickbooks_entry(const tal_t *ctx, FILE *csvf, struct income_event * /* Description */ fprintf(csvf, "%s (%s) %s: %s", - ev->tag, ev->acct_name, ev->currency, + ev->tag, ev->acct_name, asset_type_name(), ev->desc ? csv_safe_str(ev, ev->desc) : "no desc"); fprintf(csvf, ","); diff --git a/plugins/bkpr/incomestmt.h b/plugins/bkpr/incomestmt.h index 1919ee8a1..b381598f9 100644 --- a/plugins/bkpr/incomestmt.h +++ b/plugins/bkpr/incomestmt.h @@ -14,7 +14,6 @@ struct income_event { /* Some CSVs require us to put fees on the * same line as another entry */ struct amount_msat fees; - char *currency; u64 timestamp; struct bitcoin_outpoint *outpoint; diff --git a/plugins/bkpr/onchain_fee.c b/plugins/bkpr/onchain_fee.c index de4fea0e6..08afe69a4 100644 --- a/plugins/bkpr/onchain_fee.c +++ b/plugins/bkpr/onchain_fee.c @@ -1,4 +1,5 @@ #include "config.h" +#include #include #include @@ -12,7 +13,7 @@ void json_add_onchain_fee(struct json_stream *out, json_add_string(out, "tag", "onchain_fee"); json_add_amount_msat(out, "credit_msat", fee->credit); json_add_amount_msat(out, "debit_msat", fee->debit); - json_add_string(out, "currency", fee->currency); + json_add_string(out, "currency", chainparams->lightning_hrp); json_add_u64(out, "timestamp", fee->timestamp); json_add_txid(out, "txid", &fee->txid); json_object_end(out); diff --git a/plugins/bkpr/onchain_fee.h b/plugins/bkpr/onchain_fee.h index 34f95407d..03773a014 100644 --- a/plugins/bkpr/onchain_fee.h +++ b/plugins/bkpr/onchain_fee.h @@ -23,9 +23,6 @@ struct onchain_fee { struct amount_msat credit; struct amount_msat debit; - /* What token are fees? */ - char *currency; - /* Timestamp of the event that created this fee update */ u64 timestamp; diff --git a/plugins/bkpr/recorder.c b/plugins/bkpr/recorder.c index 77d8096af..6924527d2 100644 --- a/plugins/bkpr/recorder.c +++ b/plugins/bkpr/recorder.c @@ -36,7 +36,6 @@ static struct chain_event *stmt2chain_event(const tal_t *ctx, struct db_stmt *st e->debit = db_col_amount_msat(stmt, "e.debit"); e->output_value = db_col_amount_msat(stmt, "e.output_value"); - e->currency = db_col_strdup(e, stmt, "e.currency"); e->timestamp = db_col_u64(stmt, "e.timestamp"); e->blockheight = db_col_int(stmt, "e.blockheight"); @@ -101,7 +100,6 @@ static struct channel_event *stmt2channel_event(const tal_t *ctx, struct db_stmt e->debit = db_col_amount_msat(stmt, "e.debit"); e->fees = db_col_amount_msat(stmt, "e.fees"); - e->currency = db_col_strdup(e, stmt, "e.currency"); if (!db_col_is_null(stmt, "e.payment_id")) { e->payment_id = tal(e, struct sha256); db_col_sha256(stmt, "e.payment_id", e->payment_id); @@ -174,7 +172,6 @@ struct chain_event **list_chain_events_timebox(const tal_t *ctx, ", e.credit" ", e.debit" ", e.output_value" - ", e.currency" ", e.timestamp" ", e.blockheight" ", e.utxo_txid" @@ -216,7 +213,6 @@ struct chain_event **account_get_chain_events(const tal_t *ctx, ", e.credit" ", e.debit" ", e.output_value" - ", e.currency" ", e.timestamp" ", e.blockheight" ", e.utxo_txid" @@ -251,7 +247,6 @@ static struct chain_event **find_txos_for_tx(const tal_t *ctx, ", e.credit" ", e.debit" ", e.output_value" - ", e.currency" ", e.timestamp" ", e.blockheight" ", e.utxo_txid" @@ -283,7 +278,6 @@ struct fee_sum **calculate_onchain_fee_sums(const tal_t *ctx, struct db *db) " of.txid" ", of.account_id" ", a.name" - ", of.currency" ", CAST(SUM(of.credit) AS BIGINT) as credit" ", CAST(SUM(of.debit) AS BIGINT) as debit" " FROM onchain_fees of" @@ -292,7 +286,6 @@ struct fee_sum **calculate_onchain_fee_sums(const tal_t *ctx, struct db *db) " GROUP BY of.txid" ", of.account_id" ", a.name" - ", of.currency" " ORDER BY txid, account_id")); db_query_prepared(stmt); @@ -309,7 +302,6 @@ struct fee_sum **calculate_onchain_fee_sums(const tal_t *ctx, struct db *db) db_col_txid(stmt, "of.txid", sum->txid); sum->acct_db_id = db_col_u64(stmt, "of.account_id"); sum->acct_name = db_col_strdup(sum, stmt, "a.name"); - sum->currency = db_col_strdup(sum, stmt, "of.currency"); sum->fees_paid = db_col_amount_msat(stmt, "credit"); debit = db_col_amount_msat(stmt, "debit"); @@ -706,7 +698,6 @@ struct chain_event *find_chain_event_by_id(const tal_t *ctx, ", e.credit" ", e.debit" ", e.output_value" - ", e.currency" ", e.timestamp" ", e.blockheight" ", e.utxo_txid" @@ -749,7 +740,6 @@ struct chain_event **get_chain_events_by_outpoint(const tal_t *ctx, ", e.credit" ", e.debit" ", e.output_value" - ", e.currency" ", e.timestamp" ", e.blockheight" ", e.utxo_txid" @@ -776,7 +766,6 @@ struct chain_event **get_chain_events_by_outpoint(const tal_t *ctx, ", e.credit" ", e.debit" ", e.output_value" - ", e.currency" ", e.timestamp" ", e.blockheight" ", e.utxo_txid" @@ -812,7 +801,6 @@ struct chain_event **get_chain_events_by_id(const tal_t *ctx, ", e.credit" ", e.debit" ", e.output_value" - ", e.currency" ", e.timestamp" ", e.blockheight" ", e.utxo_txid" @@ -853,7 +841,6 @@ static struct chain_event *find_chain_event(const tal_t *ctx, ", e.credit" ", e.debit" ", e.output_value" - ", e.currency" ", e.timestamp" ", e.blockheight" ", e.utxo_txid" @@ -882,7 +869,6 @@ static struct chain_event *find_chain_event(const tal_t *ctx, ", e.credit" ", e.debit" ", e.output_value" - ", e.currency" ", e.timestamp" ", e.blockheight" ", e.utxo_txid" @@ -1003,7 +989,6 @@ struct channel_event **list_channel_events_timebox(const tal_t *ctx, ", e.credit" ", e.debit" ", e.fees" - ", e.currency" ", e.payment_id" ", e.part_id" ", e.timestamp" @@ -1050,7 +1035,6 @@ struct channel_event **account_get_channel_events(const tal_t *ctx, ", e.credit" ", e.debit" ", e.fees" - ", e.currency" ", e.payment_id" ", e.part_id" ", e.timestamp" @@ -1080,7 +1064,6 @@ struct channel_event **get_channel_events_by_id(const tal_t *ctx, ", e.credit" ", e.debit" ", e.fees" - ", e.currency" ", e.payment_id" ", e.part_id" ", e.timestamp" @@ -1106,7 +1089,6 @@ static struct onchain_fee *stmt2onchain_fee(const tal_t *ctx, db_col_txid(stmt, "of.txid", &of->txid); of->credit = db_col_amount_msat(stmt, "of.credit"); of->debit = db_col_amount_msat(stmt, "of.debit"); - of->currency = db_col_strdup(of, stmt, "of.currency"); of->timestamp = db_col_u64(stmt, "of.timestamp"); of->update_count = db_col_int(stmt, "of.update_count"); @@ -1144,7 +1126,6 @@ struct onchain_fee **account_get_chain_fees(const tal_t *ctx, struct db *db, ", of.txid" ", of.credit" ", of.debit" - ", of.currency" ", of.timestamp" ", of.update_count" " FROM onchain_fees of" @@ -1171,7 +1152,6 @@ struct onchain_fee **get_chain_fees_by_txid(const tal_t *ctx, struct db *db, ", of.txid" ", of.credit" ", of.debit" - ", of.currency" ", of.timestamp" ", of.update_count" " FROM onchain_fees of" @@ -1198,7 +1178,6 @@ struct onchain_fee **list_chain_fees_timebox(const tal_t *ctx, struct db *db, ", of.txid" ", of.credit" ", of.debit" - ", of.currency" ", of.timestamp" ", of.update_count" " FROM onchain_fees of" @@ -1306,7 +1285,6 @@ struct onchain_fee **account_onchain_fees(const tal_t *ctx, ", of.txid" ", of.credit" ", of.debit" - ", of.currency" ", of.timestamp" ", of.update_count" " FROM onchain_fees of" @@ -1495,7 +1473,6 @@ void log_channel_event(struct db *db, ", credit" ", debit" ", fees" - ", currency" ", payment_id" ", part_id" ", timestamp" @@ -1503,14 +1480,13 @@ void log_channel_event(struct db *db, ", rebalance_id" ")" " VALUES" - " (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?);")); + " (?, ?, ?, ?, ?, ?, ?, ?, ?, ?);")); db_bind_u64(stmt, acct->db_id); db_bind_text(stmt, e->tag); db_bind_amount_msat(stmt, e->credit); db_bind_amount_msat(stmt, e->debit); db_bind_amount_msat(stmt, e->fees); - db_bind_text(stmt, e->currency); if (e->payment_id) db_bind_sha256(stmt, e->payment_id); else @@ -1548,7 +1524,6 @@ struct chain_event **find_chain_events_bytxid(const tal_t *ctx, struct db *db, ", e.credit" ", e.debit" ", e.output_value" - ", e.currency" ", e.timestamp" ", e.blockheight" ", e.utxo_txid" @@ -1595,7 +1570,6 @@ static void insert_chain_fees_diff(struct db *db, u64 acct_id, struct bitcoin_txid *txid, struct amount_msat amount, - const char *currency, u64 timestamp) { struct db_stmt *stmt; @@ -1653,17 +1627,15 @@ static void insert_chain_fees_diff(struct db *db, ", txid" ", credit" ", debit" - ", currency" ", timestamp" ", update_count" ") VALUES" - " (?, ?, ?, ?, ?, ?, ?);")); + " (?, ?, ?, ?, ?, ?);")); db_bind_u64(stmt, acct_id); db_bind_txid(stmt, txid); db_bind_amount_msat(stmt, credit); db_bind_amount_msat(stmt, debit); - db_bind_text(stmt, currency); db_bind_u64(stmt, timestamp); db_bind_int(stmt, ++update_count); db_exec_prepared_v2(take(stmt)); @@ -1731,7 +1703,6 @@ char *update_channel_onchain_fees(const tal_t *ctx, diff, AMOUNT_MSAT(0), AMOUNT_MSAT(0), - close_ev->currency, NULL, 0, close_ev->timestamp); log_channel_event(db, acct, ev); @@ -1741,7 +1712,6 @@ char *update_channel_onchain_fees(const tal_t *ctx, AMOUNT_MSAT(0), diff, AMOUNT_MSAT(0), - close_ev->currency, NULL, 0, close_ev->timestamp); log_channel_event(db, acct, ev); @@ -1755,7 +1725,7 @@ char *update_channel_onchain_fees(const tal_t *ctx, insert_chain_fees_diff(db, acct->db_id, close_ev->spending_txid, - fees, close_ev->currency, + fees, close_ev->timestamp); } @@ -2037,7 +2007,6 @@ char *maybe_update_onchain_fees(const tal_t *ctx, struct db *db, * *was* the only game in town */ insert_chain_fees_diff(db, last_id, txid, AMOUNT_MSAT(0), - events[i]->currency, events[i]->timestamp); continue; } @@ -2056,9 +2025,7 @@ char *maybe_update_onchain_fees(const tal_t *ctx, struct db *db, } else fees = fee_part_msat; - /* FIXME: fee_currency property of acct? */ insert_chain_fees_diff(db, last_id, txid, fees, - events[i]->currency, events[i]->timestamp); } @@ -2127,7 +2094,6 @@ bool log_chain_event(struct db *db, ", credit" ", debit" ", output_value" - ", currency" ", timestamp" ", blockheight" ", utxo_txid" @@ -2139,7 +2105,7 @@ bool log_chain_event(struct db *db, ", spliced" ")" " VALUES " - "(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?);")); + "(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?);")); db_bind_u64(stmt, acct->db_id); if (e->origin_acct) @@ -2150,7 +2116,6 @@ bool log_chain_event(struct db *db, db_bind_amount_msat(stmt, e->credit); db_bind_amount_msat(stmt, e->debit); db_bind_amount_msat(stmt, e->output_value); - db_bind_text(stmt, e->currency); db_bind_u64(stmt, e->timestamp); db_bind_int(stmt, e->blockheight); db_bind_txid(stmt, &e->outpoint.txid); diff --git a/plugins/bkpr/recorder.h b/plugins/bkpr/recorder.h index db1ef5a74..1e508889c 100644 --- a/plugins/bkpr/recorder.h +++ b/plugins/bkpr/recorder.h @@ -18,7 +18,6 @@ struct onchain_fee; struct fee_sum { u64 acct_db_id; char *acct_name; - char *currency; struct bitcoin_txid *txid; struct amount_msat fees_paid; }; diff --git a/plugins/bkpr/test/run-bkpr_db.c b/plugins/bkpr/test/run-bkpr_db.c index 75505df51..f512b5b5e 100644 --- a/plugins/bkpr/test/run-bkpr_db.c +++ b/plugins/bkpr/test/run-bkpr_db.c @@ -208,7 +208,6 @@ struct channel_event *new_channel_event(const tal_t *ctx UNNEEDED, struct amount_msat credit UNNEEDED, struct amount_msat debit UNNEEDED, struct amount_msat fees UNNEEDED, - const char *currency UNNEEDED, struct sha256 *payment_id STEALS UNNEEDED, u32 part_id UNNEEDED, u64 timestamp UNNEEDED) diff --git a/plugins/bkpr/test/run-recorder.c b/plugins/bkpr/test/run-recorder.c index d5e09fe62..b2e352e9c 100644 --- a/plugins/bkpr/test/run-recorder.c +++ b/plugins/bkpr/test/run-recorder.c @@ -214,7 +214,6 @@ struct channel_event *new_channel_event(const tal_t *ctx UNNEEDED, struct amount_msat credit UNNEEDED, struct amount_msat debit UNNEEDED, struct amount_msat fees UNNEEDED, - const char *currency UNNEEDED, struct sha256 *payment_id STEALS UNNEEDED, u32 part_id UNNEEDED, u64 timestamp UNNEEDED) @@ -313,7 +312,6 @@ static bool channel_events_eq(struct channel_event *e1, struct channel_event *e2 CHECK((e1->rebalance_id != NULL) == (e2->rebalance_id != NULL)); if (e1->rebalance_id) CHECK(*e1->rebalance_id == *e2->rebalance_id); - CHECK(streq(e1->currency, e2->currency)); CHECK((e1->payment_id != NULL) == (e2->payment_id != NULL)); if (e1->payment_id) CHECK(sha256_eq(e1->payment_id, e2->payment_id)); @@ -338,7 +336,6 @@ static bool chain_events_eq(struct chain_event *e1, struct chain_event *e2) CHECK(amount_msat_eq(e1->credit, e2->credit)); CHECK(amount_msat_eq(e1->debit, e2->debit)); CHECK(amount_msat_eq(e1->output_value, e2->output_value)); - CHECK(streq(e1->currency, e2->currency)); CHECK(e1->timestamp == e2->timestamp); CHECK(e1->blockheight == e2->blockheight); CHECK(e1->stealable == e2->stealable); @@ -374,7 +371,6 @@ static struct channel_event *make_channel_event(const tal_t *ctx, ev->credit = credit; ev->debit = debit; ev->fees = AMOUNT_MSAT(104); - ev->currency = "btc"; ev->timestamp = 1919191; ev->part_id = 19; ev->tag = tag; @@ -404,7 +400,6 @@ static struct chain_event *make_chain_event(const tal_t *ctx, ev->credit = credit; ev->debit = debit; ev->output_value = output_val; - ev->currency = "btc"; ev->timestamp = 1919191; ev->blockheight = blockheight; ev->stealable = false; @@ -730,7 +725,6 @@ static bool test_onchain_fee_chan_close(const tal_t *ctx, struct plugin *p) CHECK(tal_count(ofs) == 4); for (size_t i = 0; i < tal_count(ofs); i++) { CHECK(ofs[i]->acct_db_id == acct->db_id); - CHECK(streq(ofs[i]->currency, "btc")); memset(&txid, '1', sizeof(struct bitcoin_txid)); if (bitcoin_txid_eq(&txid, &ofs[i]->txid)) { @@ -881,7 +875,6 @@ static bool test_onchain_fee_chan_open(const tal_t *ctx, struct plugin *p) amount_msat(exp_results[i].debit))); CHECK(ofs[i]->update_count == exp_results[i].update_count); - CHECK(streq(ofs[i]->currency, "btc")); CHECK(bitcoin_txid_eq(&ofs[i]->txid, &txid)); } @@ -993,7 +986,6 @@ static bool test_channel_event_crud(const tal_t *ctx, struct plugin *p) ev1->credit = AMOUNT_MSAT(100); ev1->debit = AMOUNT_MSAT(102); ev1->fees = AMOUNT_MSAT(104); - ev1->currency = "btc"; ev1->timestamp = 11111; ev1->part_id = 19; ev1->desc = tal_strdup(ev1, "hello desc1"); @@ -1009,7 +1001,6 @@ static bool test_channel_event_crud(const tal_t *ctx, struct plugin *p) ev2->credit = AMOUNT_MSAT(200); ev2->debit = AMOUNT_MSAT(202); ev2->fees = AMOUNT_MSAT(204); - ev2->currency = "brct"; ev2->timestamp = 22222; ev2->part_id = 0; ev2->tag = tal_fmt(ev2, "deposit"); @@ -1023,7 +1014,6 @@ static bool test_channel_event_crud(const tal_t *ctx, struct plugin *p) ev3->credit = AMOUNT_MSAT(300); ev3->debit = AMOUNT_MSAT(302); ev3->fees = AMOUNT_MSAT(304); - ev3->currency = "brct"; ev3->timestamp = 33333; ev3->part_id = 5; ev3->tag = tal_fmt(ev3, "routed"); @@ -1082,7 +1072,6 @@ static bool test_chain_event_crud(const tal_t *ctx, struct plugin *p) ev1->credit = AMOUNT_MSAT(100); ev1->debit = AMOUNT_MSAT(102); ev1->output_value = AMOUNT_MSAT(104); - ev1->currency = "btc"; ev1->timestamp = 1919191; ev1->blockheight = 1919191; ev1->stealable = false; @@ -1103,7 +1092,6 @@ static bool test_chain_event_crud(const tal_t *ctx, struct plugin *p) ev2->credit = AMOUNT_MSAT(200); ev2->debit = AMOUNT_MSAT(202); ev2->output_value = AMOUNT_MSAT(104); - ev2->currency = "btc"; ev2->timestamp = 1919191; ev2->blockheight = 1919191; ev2->stealable = false; @@ -1122,7 +1110,6 @@ static bool test_chain_event_crud(const tal_t *ctx, struct plugin *p) ev3->credit = AMOUNT_MSAT(300); ev3->debit = AMOUNT_MSAT(302); ev3->output_value = AMOUNT_MSAT(304); - ev3->currency = "btc"; ev3->timestamp = 3939393; ev3->blockheight = 3939393; ev3->stealable = false; @@ -1186,7 +1173,6 @@ static bool test_chain_event_crud(const tal_t *ctx, struct plugin *p) } struct acct_balance { - char *currency; struct amount_msat credit; struct amount_msat debit; struct amount_msat balance; @@ -1328,7 +1314,6 @@ static bool test_account_crud(const tal_t *ctx, struct plugin *p) ev1->credit = AMOUNT_MSAT(100); ev1->debit = AMOUNT_MSAT(102); ev1->output_value = AMOUNT_MSAT(104); - ev1->currency = "btc"; ev1->timestamp = 1919191; ev1->blockheight = 1919191; ev1->stealable = false;