The remove call does not need the timestamp of what you inserted, it just needs a timestamp *at least* that large. The current time will work. Cassandra needs this to ensure that you are not removing later-added data.
e.g. Client 1 sends node X: Add 'a' at 11:00:00 Client 2 sends node Y: Remove 'a' at 11:00:01 Client 3 sends node Z: Add 'a' at 11:00:02 In this scenario, the final update to 'a' is what the system will eventually see as the state. If there were no timestamps, it would be a race to see which of the changes prevailed. With the timestamps, the original 'a' that 1 added is removed by 2, and 3's changes are left. Michael On Sun, Nov 8, 2009 at 10:57 PM, Ramzi Rabah <[email protected]> wrote: > Hello all: > I am confused about the need of passing a timestamp for the remove > operation. Why does the remove operation in Cassandra require a > timestamp? What happens if I provide a remove call with a different > timestamp than what I inserted, will the row still be deleted? > > Thanks > Ray >
