Bitcoin full node and query server

Mar 28, 2026

View in context in the libbitcoin Slack #general mirror.

evoskuil04:48
I've verified blocks-out (and headers out) against a local core v28.0 node. Had one initial issue (an inverted operator), but then kept having what appeared to be race conditions. After digging into it, it turns out core is sending overlapping getdata (block) requests. I verified this on our end but also in their code. Since we have to deal with them, we have to treat this as allowed behavior. So I made it configurable. You'll be able to watch the overlapped I/O errors cause core nodes to drop by changing config 🙂. Working well now, passing block 375k on one manual connection from core, with no drops or delays. I'm perf-logging our block retrieval time, and had to change the scale to microseconds. Adding up all times the total retrieval time is 29% of the total time. If core took the same time to read and serialize the block as we took to deserialize and write it, the run at that point (300k, or ~5% of the chain) would be 15 minutes, but it's about 53 minutes. This machine syncs the entire chain off the Internet in 53 minutes.
(edited)
😞 1