osd_types: ObjectModDesc

Contains information needed to roll back a pg_log_entry_t.

Signed-off-by: Samuel Just <sam.just@inktank.com>
osd_types: add ObjectModDesc into pg_log_entry_t

Signed-off-by: Samuel Just <sam.just@inktank.com>
osd_types: add a can_rollback_to line to pg_log_t

This allows us to determine how far back the log can be rolled.

Signed-off-by: Samuel Just <sam.just@inktank.com>
PGBackend,ReplicatedBackend: add support for rolling back log entries

Signed-off-by: Samuel Just <sam.just@inktank.com>
osd/: introduce xattr caching for ec pools

Signed-off-by: Samuel Just <sam.just@inktank.com>
ReplicatedPG: Fill in rollback info for log events

Signed-off-by: Samuel Just <sam.just@inktank.com>
PGLog: create interface allowing interface user to cleanup/rollback

We need to be able to allow the PGLog interface user to provide
logic for rolling back and trimming log entries.  To that end,
serveral PGLog methods now take a LogEntryHander.

Signed-off-by: Samuel Just <sam.just@inktank.com>
src/test/osd/TestPGLog: fix PGLog test cases for changed methods

Signed-off-by: Samuel Just <sam.just@inktank.com>