@Override public void deleteRange(TableReference tableRef, RangeRequest range) { runWriteForceAutocommit(tableRef, (Function<DbWriteTable, Void>) table -> { table.delete(range); return null; }); }
@Override public void deleteAllTimestamps(TableReference tableRef, Map<Cell, Long> maxTimestampExclusiveByCell, boolean deleteSentinels) { runWriteForceAutocommit(tableRef, (Function<DbWriteTable, Void>) table -> { table.deleteAllTimestamps(maxTimestampExclusiveByCell, deleteSentinels); return null; }); }
@Override public void delete(TableReference tableRef, Multimap<Cell, Long> keys) { // QA-86494: We sort our deletes here because we have seen oracle deadlock errors here. ImmutableList<Entry<Cell, Long>> sorted = ORDERING.immutableSortedCopy(keys.entries()); Iterable<List<Entry<Cell, Long>>> partitions = IterablePartitioner.partitionByCountAndBytes( sorted, 10000, getMultiPutBatchSizeBytes(), tableRef, entry -> Cells.getApproxSizeOfCell(entry.getKey()) + 8); runWriteForceAutocommit(tableRef, (Function<DbWriteTable, Void>) table -> { for (List<Entry<Cell, Long>> partition : partitions) { table.delete(partition); } return null; }); }
@Override public void deleteRange(TableReference tableRef, RangeRequest range) { runWriteForceAutocommit(tableRef, (Function<DbWriteTable, Void>) table -> { table.delete(range); return null; }); }
@Override public void deleteAllTimestamps(TableReference tableRef, Map<Cell, Long> maxTimestampExclusiveByCell, boolean deleteSentinels) { runWriteForceAutocommit(tableRef, (Function<DbWriteTable, Void>) table -> { table.deleteAllTimestamps(maxTimestampExclusiveByCell, deleteSentinels); return null; }); }
@Override public void delete(TableReference tableRef, Multimap<Cell, Long> keys) { // QA-86494: We sort our deletes here because we have seen oracle deadlock errors here. ImmutableList<Entry<Cell, Long>> sorted = ORDERING.immutableSortedCopy(keys.entries()); Iterable<List<Entry<Cell, Long>>> partitions = IterablePartitioner.partitionByCountAndBytes( sorted, 10000, getMultiPutBatchSizeBytes(), tableRef, entry -> Cells.getApproxSizeOfCell(entry.getKey()) + 8); runWriteForceAutocommit(tableRef, (Function<DbWriteTable, Void>) table -> { for (List<Entry<Cell, Long>> partition : partitions) { table.delete(partition); } return null; }); }