reverbrain/elliptics — pull request #71 by SaveTheRbtz (2013-04-23 02:33:42+00:00)
Title: [Experimental] Extended data format for elliptics and native iterators

This pull request adds highly experimental features that will be core of new recovery mechanism:
* Extended data format that stores elliptics metadata in fixed header that prepended to data itself.
* Iterator cmd that streams data/metadata for particular key/timestamp range over network or writes it to file.

This changes on-disk data format for all new records! It also has enormous footprint and commit volume. Use with caution. Needs extensive testing.

Known issues:
* Newly added features like leveldb data append/offset-rewrite are not implemented. Coming soon.
* File backend is not supported for now.
* No iterator state management (pause/continue/cancel)
* Costly malloc + memcpy on header prepend.
* Tough timestamp is written it's never filled anywhere so right now it's effectively noop (fixed trivially).