public void clear(TenantIdAndCentricId tenantIdAndCentricId, ObjectId viewId, final long timestamp) throws IOException { final List<RowColumnTimestampRemove<ImmutableByteArray, ImmutableByteArray>> removes = new ArrayList<>(); final ConstantTimestamper constantTimestamper = new ConstantTimestamper(timestamp - 1); final ImmutableByteArray rowKey = rowKey(viewId); viewValueStore.getEntrys(tenantIdAndCentricId, rowKey(viewId), null, Long.MAX_VALUE, 1000, false, null, null, new CallbackStream<ColumnValueAndTimestamp<ImmutableByteArray, ViewValue, Long>>() { @Override public ColumnValueAndTimestamp<ImmutableByteArray, ViewValue, Long> callback(ColumnValueAndTimestamp<ImmutableByteArray, ViewValue, Long> v) throws Exception { if (v != null && v.getTimestamp() < timestamp) { removes.add(new RowColumnTimestampRemove<>(rowKey, v.getColumn(), constantTimestamper)); } return v; } }); viewValueStore.multiRowsMultiRemove(tenantIdAndCentricId, removes); }