[ https://issues.apache.org/jira/browse/TEPHRA-299?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16817065#comment-16817065 ]
Lars Hofhansl commented on TEPHRA-299: -------------------------------------- I suppose there are two options: # Translate the deletes on the client. # Use preBatchMutate instead in the following way: use MiniBatchOperationInProgress.addOperationsFromCP to add the translated operation, and use setOperationStatus to skip the original mutation Without giving this much thought, it seems #1 would be most natural - I see no reason why should be deferred all the way to the server. #2 of course is less intrusive and can be changed without any client or compatibility concerns. > Executing a large batch delete is very slow > ------------------------------------------- > > Key: TEPHRA-299 > URL: https://issues.apache.org/jira/browse/TEPHRA-299 > Project: Tephra > Issue Type: Bug > Affects Versions: 0.15.0-incubating > Reporter: Lars Hofhansl > Assignee: Poorna Chandra > Priority: Major > > I noticed that batch deletes are quire slow. In the profiler I found that > almost all of the time is spent in > org.apache.hadoop.hbase.regionserver.wal.FSHLog.blockOnSync(). > Looking at TransactionProcessor.preDelete it is obvious why: > The batch delete is translated into *single* puts that are added to the > region one by one, so each time the WAL is flushed. > -- This message was sent by Atlassian JIRA (v7.6.3#76005)