Bitcoin full node and query server

Nov 2, 2025

View in context in the libbitcoin Slack #general mirror.

evoskuil19:43
Implementation for this is just a set of store queries that operate over the stream, and swapping out the get block/tx calls that then serialize to wire with one that just returns the stream buffer. Blocks are stored with their serialized size (witnessed if enabled on the node), in the txs association table. So system::stream can be used over a preallocated contiguous buffer. But eventually this could even just stream write out to the port in chunks. It's possible to write the message heading without reading the object, since we always have the size indexed. So stream direct from store into the port with zero translation of scripts, witnesses, and point hashes, and the rest is just just organizing the pieces. I'd estimate 2-3 days of work for the whole thing to serialize blocks and txs directly from store to wire. The store queries no more than 1 day.
(edited)