[ https://issues.apache.org/jira/browse/HBASE-6942?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13475522#comment-13475522 ]
Ted Yu commented on HBASE-6942: ------------------------------- {code} +public class BulkDeleteEndpoint extends BaseEndpointCoprocessor implements BulkDeleteProtocol { {code} Please add annotation for audience and stability. {code} + List<byte[]> deleteRowKeys = new ArrayList<byte[]>(rowBatchSize); {code} Should a Set be used ? The use case is for deleting entire rows. We just need to collect unique row keys. {code} + if (scan.getFilter() == null) { + // What we need is just the rowkeys. So only 1st KV from any row is enough. + scan.setFilter(new FirstKeyOnlyFilter()); + } {code} If user has specified Filter already but the Filter would return many KeyValues from one row, should we introduce FirstKeyOnlyFilter through FilterList ? > Endpoint implementation for bulk delete rows > -------------------------------------------- > > Key: HBASE-6942 > URL: https://issues.apache.org/jira/browse/HBASE-6942 > Project: HBase > Issue Type: Improvement > Components: Coprocessors, Performance > Reporter: Anoop Sam John > Assignee: Anoop Sam John > Fix For: 0.94.3, 0.96.0 > > Attachments: HBASE-6942.patch, HBASE-6942_V2.patch, > HBASE-6942_V3.patch > > > We can provide an end point implementation for doing a bulk deletion of > rows(based on a scan) at the server side. This can reduce the time taken for > such an operation as right now it need to do a scan to client and issue > delete(s) using rowkeys. > Query like delete from table1 where... -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira