In my work on
HBASE-2400, implementing deletes for the Avro server felt quite awkward. Rather than the clean API of the Get object, which allows restrictions on the result set from a row to be expressed with addColumn, addFamily, setTimeStamp, setTimeRange, setMaxVersions, and setFilters, the Delete object hides these semantics behind various constructors to deleteColumn[s] an deleteFamily. From my naive vantage point, I see no reason why it would be a bad idea to mimic the Get API exactly, though I could quite possibly be missing something. Thoughts?