Apologies that I think this is really just a Linux system question, but what happens if I have multiple processes using the same mmap bloomfilter? If they're only reading, everything should be wonderful and efficient, right? But what if one or more writes changes? I'm guessing/hoping that kernel will force each process to use the same memory pages that any changes caused by one process will instantly appear for the others? One problem being that the writes can't be atomic, so as one process is writing the different hash values, the other processes will see partial results, which for a bloom filter is probably fine in practice.
Apologies that I think this is really just a Linux system question, but what happens if I have multiple processes using the same mmap bloomfilter? If they're only reading, everything should be wonderful and efficient, right? But what if one or more writes changes? I'm guessing/hoping that kernel will force each process to use the same memory pages that any changes caused by one process will instantly appear for the others? One problem being that the writes can't be atomic, so as one process is writing the different hash values, the other processes will see partial results, which for a bloom filter is probably fine in practice.