These are essentially optimizations (which also come with negative side-effects, e.g. removal of a set member is more complicated in filters), so it isn't necessary right now, although we should eventually get around to it.
Filters
Some possible filters we could use. Starting from the most known with the longest history.
What
Filter data structures are smaller & faster than traditional sets.
Cuprate could use these over traditional sets (
HashSet
,BTreeSet
) in cases where all we need to know is:x
?Off the top of my head, key image & peerlist checks could benefit from this.
These could also be used for a filter layer above the database to avoid disk access.
Filter usage in other projects:
These are essentially optimizations (which also come with negative side-effects, e.g. removal of a set member is more complicated in filters), so it isn't necessary right now, although we should eventually get around to it.
Filters
Some possible filters we could use. Starting from the most known with the longest history.