Bug #12717
Updated by Kefu Chai over 8 years ago
We setup a cache tier and set target_max_bytes to 10240, After put 2 objects(each 40MB) by 'rados put' to the cache pool, which will trigger the cache pool's agent_evict operation the ceph df and rados df shows the cache pool still have 2 objects, but the 'rados ls' shows there is no objects. It's because that in agent_maybe_evict(), we create a repop without op, in the @eval_repop()@, eval_repop(), the @repop->all_committed@ repop->all_committed is 0, so it will not execute @publish_stats_to_osd()@, <pre> publish_stats_to_osd(), // ondisk? if (repop->all_committed) { if (repop->ctx->op && !repop->log_op_stat) { log_op_stats(repop->ctx); repop->log_op_stat = true; } publish_stats_to_osd(); </pre>