LiJianyin created HBASE-10803:
---------------------------------

             Summary: "mutateRow" maybe fail when Region Server restarted(or 
killed) or Region Balance
                 Key: HBASE-10803
                 URL: https://issues.apache.org/jira/browse/HBASE-10803
             Project: HBase
          Issue Type: Bug
    Affects Versions: 0.96.1.1
         Environment: hbase0.96.1.1
hadoop2.2 
jdk1.7
5 Region Server 
            Reporter: LiJianyin


 found that the operation "mutateRow" maybe fail if Region Server restarted(or 
killed) or Region Balance, but the java client didnot throw exceptions and  
there was no exception in the server's log either. 

the client code :

                        HTableInterface table = connection.getTable(TABLE_NAME);
                        Delete d = new Delete(Bytes.toBytes(rowkey), time);
                        d.deleteColumns(FAMILY, Bytes.toBytes(id), time);
                        Put p = new Put(Bytes.toBytes(rowkey));
                        p.add(FAMILY_DEL, Bytes.toBytes(id), time, 
Bytes.toBytes(value));
                        RowMutations rm = new 
RowMutations(Bytes.toBytes(rowkey));
                        rm.add(d);
                        rm.add(p);
                        table.mutateRow(rm);
                        table.close();

the test data:
        Operator Type: put; mutateRow(delete+put) 
        Operator Total Count:202194822  put:160866148 mutateRow:41328674
        All put correct, but 161 mutateRow incorrect (161 data was not 
mutateRowed in fact).
        then we checked log when the time mutateRow failed, NO EXCEPTION 
THROWED, found that as follow:
        
39 failed  hbase auto region-balance
44 failed  hbase region server killed
59 failed  hbase region server restart
19 failed  hadoop datanode restart



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to