As this discussion shows, deleting objects in an eventual consistency
database is complicated. The concept of multiple APIs to do a delete,
and the possibility of having objects reappear, can scare new
customers away from Riak.

I understand delete is complicated, but Basho should make it as simple
as possible to understand. They should provide a single, simple,
well-documented delete API, and document how delete happens.

I find it unnatural to use the PUT operation to do a delete. I
understand the API compatibility issues, but for new users this can be
quite confusing: “So you are telling me there are two APIs I can use
to delete an object? Why!?” In my mind, changing the DELETE API would
be far better. After all, Riak is still not legacy software.

A wiki page describing how delete is done in a Riak system should be
created. The wiki page should describe how delete happens internally:
Which API to use (PUT or DELETE), tombstone concepts, etc. It should
describe current bugs, and future plans. In addition the page should
describe how the client app should handle deletes: Can you configure
tombstone lifetime? Pros/cons of using own tombstones, when can
deleted objects reappear, and how to detect and handle that.

Kind regards
Runar Jordahl
blog.epigent.com

_______________________________________________
riak-users mailing list
[email protected]
http://lists.basho.com/mailman/listinfo/riak-users_lists.basho.com

Reply via email to