Hello Igor, Deletions should be a strongly consistent operation, yes. If after a successful strongly consistent delete a GET of that key returns stale data something is likely wrong, be it with your application, the cluster, or Riak itself.
That said, deletions don't actually remove keys from Riak. Strongly consistent deletions should behave identically to conditional PUTs, where the value put is a tombstone. When Riak is running in an eventually consistent mode, those tombstones are (sometimes) eventually harvested and removed from disk. In the strongly consistent mode (as with `delete_mode = keep`) Riak will never harvest those tombstones, so they will remain on disk indefinitely. Our documentation has lots of good information, if you're looking for some implementation details[1]. Generally speaking, if you know you're going to immediately re-use a key, it's better to simply overwrite values than issuing an intermittent delete. Best regards, -Drew [1]: http://docs.basho.com/riak/latest/ops/advanced/strong-consistency/#Implementation-Details On Wed, Jan 7, 2015 at 10:01 AM, Igor Birman <igor_bir...@yahoo.com> wrote: > Is deleting a strongly consistent key a consistent operation? I have found > in testing that if I delete a key and then attempt to immediately reuse it, > sometimes the delete completes after I have reused it. Should I expect that > when I get a 204 from a delete that I can immediately create a new key with > the same id? > > _______________________________________________ > riak-users mailing list > riak-users@lists.basho.com > http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com > _______________________________________________ riak-users mailing list riak-users@lists.basho.com http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com