From 6219c561382871e3ae0034a465a11ef2ef4f65b0 Mon Sep 17 00:00:00 2001 From: Sean Gilligan Date: Wed, 4 Oct 2023 18:34:13 -0700 Subject: [PATCH] BlockFileLoaderBitcoindTest: add test `streamEntireBitcoindBlockchainAsBlocks()` This test is useful for performance comparisons with `streamEntireBitcoindBlockchainAsBuffers()`. With adding to the `TxConfidenceTable` removed from `Block.read()` and on a fast, modern laptop, `streamEntireBitcoindBlockchainAsBuffers()` currently takes under 2 minutes while `streamEntireBitcoindBlockchainAsBlocks()` takes over 5 minutes. --- .../org/bitcoinj/util/BlockFileLoaderBitcoindTest.java | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/integration-test/src/test/java/org/bitcoinj/util/BlockFileLoaderBitcoindTest.java b/integration-test/src/test/java/org/bitcoinj/util/BlockFileLoaderBitcoindTest.java index fbbc8ee13..5688d842f 100644 --- a/integration-test/src/test/java/org/bitcoinj/util/BlockFileLoaderBitcoindTest.java +++ b/integration-test/src/test/java/org/bitcoinj/util/BlockFileLoaderBitcoindTest.java @@ -94,4 +94,12 @@ public class BlockFileLoaderBitcoindTest { assertTrue(blockCount > 1); } + @Test + public void streamEntireBitcoindBlockchainAsBlocks() { + BlockFileLoader loader = new BlockFileLoader(BitcoinNetwork.MAINNET, BlockFileLoader.getReferenceClientBlockFileList()); + + long blockCount = loader.stream().count(); + System.out.println("Final block height: " + (blockCount - 1)); + assertTrue(blockCount > 1); + } }