Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion crates/bitcoind_rpc/examples/filter_iter.rs
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,9 @@ fn main() -> anyhow::Result<()> {
println!("\ntook: {}s", start.elapsed().as_secs());
println!("Local tip: {}", chain.tip().height());

let canonical_view = graph.canonical_view(&chain, chain.tip().block_id(), Default::default());
let chain_tip = chain.tip().block_id();
let task = graph.canonicalization_task(chain_tip, Default::default());
let canonical_view = chain.canonicalize(task);
Comment on lines +72 to +74
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What do you think about the following naming:

  • CanonicalizationTask -> CanonicalResolver.
  • TxGraph::canonicalization_task -> TxGraph::resolver.
  • LocalChain::canonicalize -> LocalChain::resolve.


let unspent: Vec<_> = canonical_view
.filter_unspent_outpoints(graph.index.outpoints().clone())
Expand Down
21 changes: 14 additions & 7 deletions crates/bitcoind_rpc/tests/test_emitter.rs
Original file line number Diff line number Diff line change
Expand Up @@ -310,9 +310,12 @@ fn get_balance(
) -> anyhow::Result<Balance> {
let chain_tip = recv_chain.tip().block_id();
let outpoints = recv_graph.index.outpoints().clone();
let balance = recv_graph
.canonical_view(recv_chain, chain_tip, CanonicalizationParams::default())
.balance(outpoints, |_, _| true, 1);
let task = recv_graph
.graph()
.canonicalization_task(chain_tip, CanonicalizationParams::default());
let balance = recv_chain
.canonicalize(task)
.balance(outpoints, |_, _| true, 0);
Ok(balance)
}

Expand Down Expand Up @@ -616,8 +619,9 @@ fn test_expect_tx_evicted() -> anyhow::Result<()> {
let _txid_2 = core.send_raw_transaction(&tx1b)?;

// Retrieve the expected unconfirmed txids and spks from the graph.
let exp_spk_txids = graph
.canonical_view(&chain, chain_tip, Default::default())
let task = graph.canonicalization_task(chain_tip, Default::default());
let exp_spk_txids = chain
.canonicalize(task)
.list_expected_spk_txids(&graph.index, ..)
.collect::<Vec<_>>();
assert_eq!(exp_spk_txids, vec![(spk, txid_1)]);
Expand All @@ -632,8 +636,11 @@ fn test_expect_tx_evicted() -> anyhow::Result<()> {
// Update graph with evicted tx.
let _ = graph.batch_insert_relevant_evicted_at(mempool_event.evicted);

let canonical_txids = graph
.canonical_view(&chain, chain_tip, CanonicalizationParams::default())
let task = graph
.graph()
.canonicalization_task(chain_tip, CanonicalizationParams::default());
let canonical_txids = chain
.canonicalize(task)
.txs()
.map(|tx| tx.txid)
.collect::<Vec<_>>();
Expand Down
30 changes: 15 additions & 15 deletions crates/chain/benches/canonicalization.rs
Original file line number Diff line number Diff line change
Expand Up @@ -95,31 +95,31 @@ fn setup<F: Fn(&mut KeychainTxGraph, &LocalChain)>(f: F) -> (KeychainTxGraph, Lo
}

fn run_list_canonical_txs(tx_graph: &KeychainTxGraph, chain: &LocalChain, exp_txs: usize) {
let view = tx_graph.canonical_view(
chain,
chain.tip().block_id(),
CanonicalizationParams::default(),
);
let chain_tip = chain.tip().block_id();
let task = tx_graph
.graph()
.canonicalization_task(chain_tip, CanonicalizationParams::default());
let view = chain.canonicalize(task);
let txs = view.txs();
assert_eq!(txs.count(), exp_txs);
}

fn run_filter_chain_txouts(tx_graph: &KeychainTxGraph, chain: &LocalChain, exp_txos: usize) {
let view = tx_graph.canonical_view(
chain,
chain.tip().block_id(),
CanonicalizationParams::default(),
);
let chain_tip = chain.tip().block_id();
let task = tx_graph
.graph()
.canonicalization_task(chain_tip, CanonicalizationParams::default());
let view = chain.canonicalize(task);
let utxos = view.filter_outpoints(tx_graph.index.outpoints().clone());
assert_eq!(utxos.count(), exp_txos);
}

fn run_filter_chain_unspents(tx_graph: &KeychainTxGraph, chain: &LocalChain, exp_utxos: usize) {
let view = tx_graph.canonical_view(
chain,
chain.tip().block_id(),
CanonicalizationParams::default(),
);
let chain_tip = chain.tip().block_id();
let task = tx_graph
.graph()
.canonicalization_task(chain_tip, CanonicalizationParams::default());
let view = chain.canonicalize(task);
let utxos = view.filter_unspent_outpoints(tx_graph.index.outpoints().clone());
assert_eq!(utxos.count(), exp_utxos);
}
Expand Down
7 changes: 4 additions & 3 deletions crates/chain/benches/indexer.rs
Original file line number Diff line number Diff line change
Expand Up @@ -84,9 +84,10 @@ fn do_bench(indexed_tx_graph: &KeychainTxGraph, chain: &LocalChain) {
// Check balance
let chain_tip = chain.tip().block_id();
let op = graph.index.outpoints().clone();
let bal = graph
.canonical_view(chain, chain_tip, CanonicalizationParams::default())
.balance(op, |_, _| false, 1);
let task = graph
.graph()
.canonicalization_task(chain_tip, CanonicalizationParams::default());
let bal = chain.canonicalize(task).balance(op, |_, _| false, 1);
assert_eq!(bal.total(), AMOUNT * TX_CT as u64);
}

Expand Down
Loading
Loading