reverbrain/eblob — pull request #11 by SaveTheRbtz (2013-03-25 19:42:34+00:00)
Title: New API, rwlocks and bugfixes

Notable changes:

Added new APIs:
`int eblob_read_return()`
`int eblob_write_return()`
that copy wc into provided pointer. Those should replace `BLOB_DISK_CTL_WRITE_RETURN` hack.

* Added `BLOB_DISK_CTL_USR1` which can be used by eblob library clients.
* Properly compute alignment for writes with block size specified.
* Truncate blob on each write when `EBLOB_NO_FOOTER` is set.
* Fixed `eblob_csum_ok()` segfault on broken entries.
* Replaced global mutexes with rwlocks.
* Fixed setting of `b->stat.sort_status` that now can be used by elliptics to determinate current defragmentation status.
* Removed unnecessary lock/unlock in `eblob_lookup_type()` when `L2HASH` is disabled.
* Fixed iterator behavior when `EBLOB_AUTO_DATASORT` is set.
* Added tests for block size + no footer case.