[ 
https://issues.apache.org/jira/browse/HBASE-8678?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Jean-Marc Spaggiari updated HBASE-8678:
---------------------------------------

    Status: Patch Available  (was: Open)

Patchs for 0.94 and trunk attached. Attached trunk last so Jenkins should be 
able to run it.
The testDelete method was already there on the test class, but not declared at 
@ Test so was not running... I have added the test with the timestamp. I tried 
without the fix, test failed. I tried with the fix, test passed. In both 0.94 
and trunk.
                
> Wrongly delete cells in some case which can not be deleted
> ----------------------------------------------------------
>
>                 Key: HBASE-8678
>                 URL: https://issues.apache.org/jira/browse/HBASE-8678
>             Project: HBase
>          Issue Type: Bug
>          Components: REST
>    Affects Versions: 0.95.0, 0.94.5
>         Environment: CentOS 5.5/hadoop0.20.2/hbase0.94.5/zookeeper3.4.3
>            Reporter: Eric Huang
>            Assignee: Jean-Marc Spaggiari
>         Attachments: HBASE-8678-v0-trunk.patch, HBASE-8678-v1-trunk.patch, 
> HBASE-8678-v2-0.94.patch, HBASE-8678-v2-trunk.patch, 
> HBASE-8678-v3-0.94.patch, HBASE-8678-v3-trunk.patch
>
>
> First, I put a cell using put interface, but I don't specify timestamp. Then 
> I delete the the same row, specify a timestamp of 1L. Unfortunately, the 
> former cell is 
> deleted. We should know this cell can not be deleted in this case. (Using 
> original Client API)
> Code like this;
> public static void main(String[] args) throws Exception {
>         Cluster cluster = new Cluster();
>         cluster.add("10.28.171.38", 8080);
>         Client client = new Client(cluster);
>         RemoteHTable table = new RemoteHTable(client, "demotime");
>                 
>         Put put = new Put(Bytes.toBytes("row21"));
>         put.add("info".getBytes(), "name".getBytes(), "huanggang".getBytes());
>         table.put(put);
>         
>         Delete delete = new Delete(Bytes.toBytes("row21"));
>         delete.setTimestamp(1L);
>         table.delete(delete);
>     }

--
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

Reply via email to