Bugfixes:
- Atomically deallocate regions and update the logstore object
- Proactively invalidate iterators after each merge (before, it would simply set a not-valid bit. This doesn't work because iterators hold page pins, which breaks force-writes)
- Clarify semantics of opening iterators mid-stream: All calls now return iterators that return first key >= the requested one. revalidate() needs the key > the requested one, so it calls peek(), then (if necessary) getnext().
- Add asserts to check that the header is latched at update, and that tuples returned by iterators are strictly monotonically increasing'
- Improve error handling in network.h We still get (and terminate on) SIGPIPE.
Refactoring:
- Add dispatch function to network.h.
git-svn-id: svn+ssh://svn.corp.yahoo.com/yahoo/yrl/labs/pnuts/code/logstore@620 8dad8b1f-cf64-0410-95b6-bcf113ffbcfe