I understand that bloom filters are used to quickly scan for log topics and corresponding contract addresses. I also understand that an 2048-bit bloom filter is stored in the block header.

Question: If I have a filter looking for a specific log topic value from block 0 to the latest block: how does the node search for this? Will it iterate over the bloom filters block by block starting by block 0? Or, is there a hierarchy of bloom filters (mipmaps?) so that multiple blocks can be filtered at once? Bonus for pointing to geth code location where this is implemented.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.