| 6942 | } |
| 6943 | |
| 6944 | static u64 insert_chain_mvt(struct lightningd *ld, |
| 6945 | struct db *db, |
| 6946 | const struct chain_coin_mvt *chain_mvt) |
| 6947 | { |
| 6948 | struct db_stmt *stmt; |
| 6949 | u64 id; |
| 6950 | |
| 6951 | stmt = db_prepare_v2(db, |
| 6952 | SQL("INSERT INTO chain_moves (" |
| 6953 | " id," |
| 6954 | " account_channel_id," |
| 6955 | " account_nonchannel_id," |
| 6956 | " tag_bitmap," |
| 6957 | " credit_or_debit," |
| 6958 | " timestamp," |
| 6959 | " utxo," |
| 6960 | " spending_txid," |
| 6961 | " peer_id," |
| 6962 | " payment_hash," |
| 6963 | " block_height," |
| 6964 | " output_sat," |
| 6965 | " originating_channel_id," |
| 6966 | " originating_nonchannel_id," |
| 6967 | " output_count) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)")); |
| 6968 | id = chain_mvt_index_created(ld, db, |
| 6969 | &chain_mvt->account, |
| 6970 | chain_mvt->credit, chain_mvt->debit); |
| 6971 | db_bind_u64(stmt, id); |
| 6972 | db_bind_mvt_account_id(stmt, db, &chain_mvt->account); |
| 6973 | db_bind_mvt_tags(stmt, chain_mvt->tags); |
| 6974 | db_bind_credit_debit(stmt, chain_mvt->credit, chain_mvt->debit); |
| 6975 | db_bind_u64(stmt, chain_mvt->timestamp); |
| 6976 | db_bind_outpoint(stmt, &chain_mvt->outpoint); |
| 6977 | if (chain_mvt->spending_txid) |
| 6978 | db_bind_txid(stmt, chain_mvt->spending_txid); |
| 6979 | else |
| 6980 | db_bind_null(stmt); |
| 6981 | if (chain_mvt->peer_id) |
| 6982 | db_bind_node_id(stmt, chain_mvt->peer_id); |
| 6983 | else |
| 6984 | db_bind_null(stmt); |
| 6985 | if (chain_mvt->payment_hash) |
| 6986 | db_bind_sha256(stmt, chain_mvt->payment_hash); |
| 6987 | else |
| 6988 | db_bind_null(stmt); |
| 6989 | db_bind_int(stmt, chain_mvt->blockheight); |
| 6990 | db_bind_amount_sat(stmt, chain_mvt->output_val); |
| 6991 | if (chain_mvt->originating_acct) { |
| 6992 | db_bind_mvt_account_id(stmt, db, chain_mvt->originating_acct); |
| 6993 | } else { |
| 6994 | db_bind_null(stmt); |
| 6995 | db_bind_null(stmt); |
| 6996 | } |
| 6997 | if (chain_mvt->output_count > 0) |
| 6998 | db_bind_int(stmt, chain_mvt->output_count); |
| 6999 | else |
| 7000 | db_bind_null(stmt); |
| 7001 | db_exec_prepared_v2(take(stmt)); |
no test coverage detected