Description
After keylist comparision, a log line is made logging the number of missing objects among other things: https://github.com/basho/riak_repl/blob/develop/src/riak_repl_fullsync_helper.erl#L186
DiffState#diff_state.missing is incremented in the missing_key function:
https://github.com/basho/riak_repl/blob/develop/src/riak_repl_fullsync_helper.erl#L382
The problem is, that DiffState#diff_state.missing includes semantically different missing objects:
- Missing object with data.
- Missing object is a tombstone that should be kept.
- Missing object is a tombstone that should have been purged, because it is older than delete_mode millis, but wasn't.
It would be extremely useful if these 3 were logged independently, because then FS log output could be used to verify that RT was working as it should. Currently, we're seeing some 100k missing on every FS, which are (hopefully!) tombstones - but we can't actually know if our two clusters are in sync data-wise, because we can't see if the missing objects are data-carrying or just tombstones purged on one side but not on the other.