longevity icon indicating copy to clipboard operation
longevity copied to clipboard

In place deletes

Open sullivan- opened this issue 7 years ago • 1 comments

Add methods Repo.deleteByKeyVal and Repo.deleteByQuery to delete lots of rows "in place", i.e., without loading them from the database first.

Perhaps we should put these in Repo.inplace.deleteByKeyVal and Repo.inplace.deleteByQuery so as to keep the Repo API from getting too cluttered. In this picture we would have a val Repo.inplace with type InPlaceUpdates or some such. Note that in place methods updateByKeyVal and updateByQuery described in another ticket.

  • Implement in all four back ends (Cassandra, JDBC, InMem, MongoDB).
  • Add integration test for deleteByKeyVal in RepoCrudSpec.
  • Add integration tests for deleteByQuery in longevity.integration.queries. It may take a little bit of thought and discussion to come up with a minimal set of tests here to cover cases.

sullivan- avatar Sep 22 '17 20:09 sullivan-

This is by no means a small piece of work, but there is nothing particularly tricky about it either.

sullivan- avatar Sep 22 '17 20:09 sullivan-