VoltDB/voltdb — pull request #886 by nshi (2013-10-23 15:33:03+00:00)
Title: ENG-5298: Fix double deletion when both elastic context and COW context are in use

The sequence of operation that triggers the bug is:

* Have a snapshot in progress.
* Build an elastic index.
* Delete a tuple that is in the elastic index but hasn't scanned by the COW context in a transaction. The tuple will be removed from all indexes, but pending deletion after the COW context has scanned it.
* Read the tuple from the elastic index before it's scanned by the COW context. The elastic read context will try to delete the tuple, which fails because the tuple is no longer in any index.