MB-23795: Ephemeral Tombstone purging Task 85/76485/16
authorDave Rigby <daver@couchbase.com>
Fri, 7 Apr 2017 17:20:52 +0000 (18:20 +0100)
committerDave Rigby <daver@couchbase.com>
Thu, 13 Apr 2017 16:27:56 +0000 (16:27 +0000)
commitce7a2ddf828848b47f777683a4352660e42c7d31
tree91b4a13ea40c4193b6565e1776e962088e2c9cd6
parent58b8ee8ff8264f7b145435b04600a8f3d4d2e52e
MB-23795: Ephemeral Tombstone purging Task

Expands on the previous patch to implement a Task which performs
Tombstone purging. This Task is scheduled periodically (see
ep_ephemeral_metadata_purge_interval), and when run it visits all
vBuckets and purges all applicable OSVs.

Task can be reconfigured dynamically via epctl parameters:

- ephemeral_metadata_purge_age: Age in seconds after which deleted
  items are purged.

- ephemeral_metadata_purge_interval: How often should Tombstone
  purging task run to check for items to be purged.

Example output:

    NOTICE (eph) Ephemeral Tombstone Purger starting with purge age:60
    NOTICE (eph) Ephemeral Tombstone Purger completed. Purged 39000 items. Took 104ms. Sleeping for 60 seconds.

Change-Id: I126c74f2e82c0a31a2843240303548a24af2e90f
Reviewed-on: http://review.couchbase.org/76485
Reviewed-by: Jim Walker <jim@couchbase.com>
Tested-by: Build Bot <build@couchbase.com>
configuration.json
src/ep_engine.cc
src/ephemeral_bucket.cc
src/ephemeral_bucket.h
src/ephemeral_tombstone_purger.cc
src/ephemeral_tombstone_purger.h
src/ephemeral_vb.h
src/tasks.def.h
tests/ep_testsuite.cc