You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@hbase.apache.org by st...@apache.org on 2014/01/30 22:08:24 UTC

svn commit: r1562961 - /hbase/branches/0.96/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java

Author: stack
Date: Thu Jan 30 21:08:24 2014
New Revision: 1562961

URL: http://svn.apache.org/r1562961
Log:
HBASE-10442 prepareDelete() isn't called before doPreMutationHook for a row deletion case

Modified:
    hbase/branches/0.96/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java

Modified: hbase/branches/0.96/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java
URL: http://svn.apache.org/viewvc/hbase/branches/0.96/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java?rev=1562961&r1=1562960&r2=1562961&view=diff
==============================================================================
--- hbase/branches/0.96/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java (original)
+++ hbase/branches/0.96/hbase-server/src/main/java/org/apache/hadoop/hbase/regionserver/HRegion.java Thu Jan 30 21:08:24 2014
@@ -2009,7 +2009,12 @@ public class HRegion implements HeapSize
             batchOp.retCodeDetails[i] = OperationStatus.SUCCESS;
           }
         } else if (m instanceof Delete) {
-          if (coprocessorHost.preDelete((Delete) m, walEdit, m.getDurability())) {
+          Delete curDel = (Delete) m;
+          if (curDel.getFamilyCellMap().isEmpty()) {
+            // handle deleting a row case
+            prepareDelete(curDel);
+          }
+          if (coprocessorHost.preDelete(curDel, walEdit, m.getDurability())) {
             // pre hook says skip this Delete
             // mark as success and skip in doMiniBatchMutation
             batchOp.retCodeDetails[i] = OperationStatus.SUCCESS;