Skip to content

mv bucket expiry

Matthew Von-Maszewski edited this page Nov 18, 2016 · 15 revisions

Status

  • merged to master -
  • code complete - November 18, 2016
  • development started - 11, 2016

History / Context

This branch is a partial implementation of Basho's expiry by bucket types for use within Riak. This branch contains the subset of the total design that is sufficient for an immediate customer need. Subsequent branches will complete the expiry by bucket type feature.

The complete feature is intended for Basho's enterprise edition products, not open source. Enterprise edition products required paid support. Therefore a substantial portion of this feature is isolated within the private leveldb_ee repository. Portions of the feature are also within Basho's eleveldb open source repository. A successful build requires the mv-bucket-expiry branch from all three repositories: basho/eleveldb, basho/leveldb, and basho/leveldb_ee. The term "this branch" refers to the collective set of code changes within all three repositories.

The key feature of this branch is to derive the expiry "write time" from data within a Riak Object that is being written to leveldb. There are two write time sources: Riak Object's LastModTime field and an optional customer X-Riak-Meta-Expiry-Base-Seconds field.

Branch description

db/dbformat.cc & .h

Clone this wiki locally