You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-dev@hadoop.apache.org by "stack (JIRA)" <ji...@apache.org> on 2007/06/29 22:01:04 UTC

[jira] Created: (HADOOP-1550) [hbase] No means of deleting a'row' nor all members of a column family

[hbase] No means of deleting a'row' nor all members of a column family
----------------------------------------------------------------------

                 Key: HADOOP-1550
                 URL: https://issues.apache.org/jira/browse/HADOOP-1550
             Project: Hadoop
          Issue Type: Bug
          Components: contrib/hbase
            Reporter: stack
            Assignee: stack
            Priority: Minor


There is no support in hbase currently for deleting a row -- i.e. remove all columns and their versions keyed by a particular row id.  Nor is there a means of passing in a row id and column family name having hbase delete all members of the column family (for the designated row).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (HADOOP-1550) [hbase] No means of deleting a'row' nor all members of a column family

Posted by "Hadoop QA (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HADOOP-1550?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12549137 ] 

Hadoop QA commented on HADOOP-1550:
-----------------------------------

-1 overall.  Here are the results of testing the latest attachment 
http://issues.apache.org/jira/secure/attachment/12371155/1550-v3.patch
against trunk revision r601518.

    @author +1.  The patch does not contain any @author tags.

    javadoc +1.  The javadoc tool did not generate any warning messages.

    javac +1.  The applied patch does not generate any new compiler warnings.

    findbugs +1.  The patch does not introduce any new Findbugs warnings.

    core tests +1.  The patch passed core unit tests.

    contrib tests -1.  The patch failed contrib unit tests.

Test results: http://lucene.zones.apache.org:8080/hudson/job/Hadoop-Patch/1282/testReport/
Findbugs warnings: http://lucene.zones.apache.org:8080/hudson/job/Hadoop-Patch/1282/artifact/trunk/build/test/findbugs/newPatchFindbugsWarnings.html
Checkstyle results: http://lucene.zones.apache.org:8080/hudson/job/Hadoop-Patch/1282/artifact/trunk/build/test/checkstyle-errors.html
Console output: http://lucene.zones.apache.org:8080/hudson/job/Hadoop-Patch/1282/console

This message is automatically generated.

> [hbase] No means of deleting a'row' nor all members of a column family
> ----------------------------------------------------------------------
>
>                 Key: HADOOP-1550
>                 URL: https://issues.apache.org/jira/browse/HADOOP-1550
>             Project: Hadoop
>          Issue Type: Improvement
>          Components: contrib/hbase
>            Reporter: stack
>            Assignee: Bryan Duxbury
>         Attachments: 1550-v2.patch, 1550-v3.patch, 1550.patch
>
>
> There is no support in hbase currently for deleting a row -- i.e. remove all columns and their versions keyed by a particular row id.  Nor is there a means of passing in a row id and column family name having hbase delete all members of the column family (for the designated row).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (HADOOP-1550) [hbase] No means of deleting a'row' nor all members of a column family

Posted by "stack (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HADOOP-1550?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12522671 ] 

stack commented on HADOOP-1550:
-------------------------------

Regards deleting all members of a column family for a paritcular row, we could add a special entry into the cell at row:columnfamily.  Gets and scans would check the asked for cell at row:column -- where column here is columnfamily + qualifier -- AND the value if any in the row:columnfamily position.   Deleting a row would add the special value to each columnfamily for the designated row.

Not pretty. 

> [hbase] No means of deleting a'row' nor all members of a column family
> ----------------------------------------------------------------------
>
>                 Key: HADOOP-1550
>                 URL: https://issues.apache.org/jira/browse/HADOOP-1550
>             Project: Hadoop
>          Issue Type: Bug
>          Components: contrib/hbase
>            Reporter: stack
>            Assignee: stack
>            Priority: Minor
>
> There is no support in hbase currently for deleting a row -- i.e. remove all columns and their versions keyed by a particular row id.  Nor is there a means of passing in a row id and column family name having hbase delete all members of the column family (for the designated row).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (HADOOP-1550) [hbase] No means of deleting a'row' nor all members of a column family

Posted by "Bryan Duxbury (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HADOOP-1550?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Bryan Duxbury updated HADOOP-1550:
----------------------------------

    Status: Patch Available  (was: In Progress)

Tests pass locally, except for TestScanner2, which has shown to fail even without the patch.

> [hbase] No means of deleting a'row' nor all members of a column family
> ----------------------------------------------------------------------
>
>                 Key: HADOOP-1550
>                 URL: https://issues.apache.org/jira/browse/HADOOP-1550
>             Project: Hadoop
>          Issue Type: Improvement
>          Components: contrib/hbase
>            Reporter: stack
>            Assignee: Bryan Duxbury
>         Attachments: 1550-v2.patch, 1550.patch
>
>
> There is no support in hbase currently for deleting a row -- i.e. remove all columns and their versions keyed by a particular row id.  Nor is there a means of passing in a row id and column family name having hbase delete all members of the column family (for the designated row).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (HADOOP-1550) [hbase] No means of deleting a'row' nor all members of a column family

Posted by "stack (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HADOOP-1550?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12549560 ] 

stack commented on HADOOP-1550:
-------------------------------

Only critical things are that teardown should pass the miniHdfs instance to StaticTestEnvironment.shutdownDfs (I know, the other tests need to do this too -- we need to fix this) and you ahve redundant imports (I'll give you $5 dollars if you come by and let me help you do your eclipse setup).

Otherwise, non-blocking minor items:

+ You might add test that adds a pure column family, one w/o qualifier -- just to be sure that works.  You might assert that cell values actually made it into hbase before you check to see if they have been deleted.
+ line lengths are generally <= 80 FYI.
+ Do you need to call the 'fail' -- just asking?  Any harm letting the null fall into the subsequent assertEquals?
+ Could you do 'Test.getLength() <= 0' instead of getColumn().toString().equals("") and save on a convertion to String?  Same here 'origin.getColumn().equals(new Text())'.

This is interesting:

-              if(HLogEdit.isDeleted(readval.get())) {
+              if(isDeleted(readkey, readval.get(), true, deletes)) {

DId you find a bug in our getFull?

Change this javadoc -- 'Test that the @param target ...' -- to <i>target</i> (drop the @param -- might confuse javadoc tool or at minimum, looks odd in produced javadoc).  Same for @param origin.

Just FYI, this:

{code}
+      if (target.getRow().equals(origin.getRow())) {
+        // check the timestamp
+        return target.getTimestamp() <= origin.getTimestamp();
+      } else {
+        return false;
+      }
{code}
could be written as:
{code}
return (target.getRow().equals(origin.getRow())) ? target.getTimestamp() <= origin.getTimestamp();: false;
{code}

Just FYI.

Otherwise, good on you.  You've (nearly) nailed a tough nugget.




> [hbase] No means of deleting a'row' nor all members of a column family
> ----------------------------------------------------------------------
>
>                 Key: HADOOP-1550
>                 URL: https://issues.apache.org/jira/browse/HADOOP-1550
>             Project: Hadoop
>          Issue Type: Improvement
>          Components: contrib/hbase
>            Reporter: stack
>            Assignee: Bryan Duxbury
>         Attachments: 1550-v2.patch, 1550-v3.patch, 1550-v4.patch, 1550.patch
>
>
> There is no support in hbase currently for deleting a row -- i.e. remove all columns and their versions keyed by a particular row id.  Nor is there a means of passing in a row id and column family name having hbase delete all members of the column family (for the designated row).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (HADOOP-1550) [hbase] No means of deleting a'row' nor all members of a column family

Posted by "Bryan Duxbury (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HADOOP-1550?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Bryan Duxbury updated HADOOP-1550:
----------------------------------

    Status: Patch Available  (was: Open)

Sending to Hudson.

> [hbase] No means of deleting a'row' nor all members of a column family
> ----------------------------------------------------------------------
>
>                 Key: HADOOP-1550
>                 URL: https://issues.apache.org/jira/browse/HADOOP-1550
>             Project: Hadoop
>          Issue Type: Improvement
>          Components: contrib/hbase
>            Reporter: stack
>            Assignee: Bryan Duxbury
>         Attachments: 1550-v2.patch, 1550-v3.patch, 1550-v4.patch, 1550-v5.patch, 1550-v6.patch, 1550.patch
>
>
> There is no support in hbase currently for deleting a row -- i.e. remove all columns and their versions keyed by a particular row id.  Nor is there a means of passing in a row id and column family name having hbase delete all members of the column family (for the designated row).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (HADOOP-1550) [hbase] No means of deleting a'row' nor all members of a column family

Posted by "Bryan Duxbury (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HADOOP-1550?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Bryan Duxbury updated HADOOP-1550:
----------------------------------

    Attachment: 1550.patch

Here goes.

This patch adds deleteAll(Text row) and deleteAll(Text row, long ts). It deletes all the cells for the row.

> [hbase] No means of deleting a'row' nor all members of a column family
> ----------------------------------------------------------------------
>
>                 Key: HADOOP-1550
>                 URL: https://issues.apache.org/jira/browse/HADOOP-1550
>             Project: Hadoop
>          Issue Type: Improvement
>          Components: contrib/hbase
>            Reporter: stack
>            Assignee: Bryan Duxbury
>         Attachments: 1550.patch
>
>
> There is no support in hbase currently for deleting a row -- i.e. remove all columns and their versions keyed by a particular row id.  Nor is there a means of passing in a row id and column family name having hbase delete all members of the column family (for the designated row).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (HADOOP-1550) [hbase] No means of deleting a'row' nor all members of a column family

Posted by "Bryan Duxbury (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HADOOP-1550?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Bryan Duxbury updated HADOOP-1550:
----------------------------------

    Attachment: 1550-v5.patch

OK, fixed the javadoc issues and lengthy lines. 

The null check in assertCellValuePresent is necessary because if the result is null, attempting to create a string out of it throws an exception instead of a nice assertion failure.

And yes, I did in fact find a bug in getFull. It would only check if the cell was deleted in the HStore, not the memcache. This bug was introduced by me some time ago when I "fixed" getFull to not return deleted values. Now it's *really* fixed.

> [hbase] No means of deleting a'row' nor all members of a column family
> ----------------------------------------------------------------------
>
>                 Key: HADOOP-1550
>                 URL: https://issues.apache.org/jira/browse/HADOOP-1550
>             Project: Hadoop
>          Issue Type: Improvement
>          Components: contrib/hbase
>            Reporter: stack
>            Assignee: Bryan Duxbury
>         Attachments: 1550-v2.patch, 1550-v3.patch, 1550-v4.patch, 1550-v5.patch, 1550.patch
>
>
> There is no support in hbase currently for deleting a row -- i.e. remove all columns and their versions keyed by a particular row id.  Nor is there a means of passing in a row id and column family name having hbase delete all members of the column family (for the designated row).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (HADOOP-1550) [hbase] No means of deleting a'row' nor all members of a column family

Posted by "Jim Kellerman (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HADOOP-1550?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jim Kellerman updated HADOOP-1550:
----------------------------------

    Issue Type: Improvement  (was: Bug)

> [hbase] No means of deleting a'row' nor all members of a column family
> ----------------------------------------------------------------------
>
>                 Key: HADOOP-1550
>                 URL: https://issues.apache.org/jira/browse/HADOOP-1550
>             Project: Hadoop
>          Issue Type: Improvement
>          Components: contrib/hbase
>            Reporter: stack
>            Priority: Minor
>
> There is no support in hbase currently for deleting a row -- i.e. remove all columns and their versions keyed by a particular row id.  Nor is there a means of passing in a row id and column family name having hbase delete all members of the column family (for the designated row).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Work started: (HADOOP-1550) [hbase] No means of deleting a'row' nor all members of a column family

Posted by "Bryan Duxbury (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HADOOP-1550?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Work on HADOOP-1550 started by Bryan Duxbury.

> [hbase] No means of deleting a'row' nor all members of a column family
> ----------------------------------------------------------------------
>
>                 Key: HADOOP-1550
>                 URL: https://issues.apache.org/jira/browse/HADOOP-1550
>             Project: Hadoop
>          Issue Type: Improvement
>          Components: contrib/hbase
>            Reporter: stack
>            Assignee: Bryan Duxbury
>
> There is no support in hbase currently for deleting a row -- i.e. remove all columns and their versions keyed by a particular row id.  Nor is there a means of passing in a row id and column family name having hbase delete all members of the column family (for the designated row).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (HADOOP-1550) [hbase] No means of deleting a'row' nor all members of a column family

Posted by "Bryan Duxbury (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HADOOP-1550?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Bryan Duxbury updated HADOOP-1550:
----------------------------------

    Attachment: 1550-v3.patch

This patch cleans up stack's javadoc suggestions.

> [hbase] No means of deleting a'row' nor all members of a column family
> ----------------------------------------------------------------------
>
>                 Key: HADOOP-1550
>                 URL: https://issues.apache.org/jira/browse/HADOOP-1550
>             Project: Hadoop
>          Issue Type: Improvement
>          Components: contrib/hbase
>            Reporter: stack
>            Assignee: Bryan Duxbury
>         Attachments: 1550-v2.patch, 1550-v3.patch, 1550.patch
>
>
> There is no support in hbase currently for deleting a row -- i.e. remove all columns and their versions keyed by a particular row id.  Nor is there a means of passing in a row id and column family name having hbase delete all members of the column family (for the designated row).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (HADOOP-1550) [hbase] No means of deleting a'row' nor all members of a column family

Posted by "stack (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HADOOP-1550?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

stack updated HADOOP-1550:
--------------------------

    Attachment: 1550-v6.patch

Added running StaticTestEnvironment minihdfs shutdown.   Its close of fs before shutting down the minidfs seems to be what fixed the occasionaly hudson hang.  Also added for my own edification to the unit test a check that pure columnfamily cell entries get removed.

+1 on patch. Ran the unit test and it passed.

> [hbase] No means of deleting a'row' nor all members of a column family
> ----------------------------------------------------------------------
>
>                 Key: HADOOP-1550
>                 URL: https://issues.apache.org/jira/browse/HADOOP-1550
>             Project: Hadoop
>          Issue Type: Improvement
>          Components: contrib/hbase
>            Reporter: stack
>            Assignee: Bryan Duxbury
>         Attachments: 1550-v2.patch, 1550-v3.patch, 1550-v4.patch, 1550-v5.patch, 1550-v6.patch, 1550.patch
>
>
> There is no support in hbase currently for deleting a row -- i.e. remove all columns and their versions keyed by a particular row id.  Nor is there a means of passing in a row id and column family name having hbase delete all members of the column family (for the designated row).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (HADOOP-1550) [hbase] No means of deleting a'row' nor all members of a column family

Posted by "stack (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HADOOP-1550?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

stack updated HADOOP-1550:
--------------------------

       Resolution: Fixed
    Fix Version/s: 0.16.0
           Status: Resolved  (was: Patch Available)

Committed.  Resolving.  Thanks Bryan.

Only thing outstanding is deleting all cells from a particular family.  Made a new issue HADOOP-2384 for that.

> [hbase] No means of deleting a'row' nor all members of a column family
> ----------------------------------------------------------------------
>
>                 Key: HADOOP-1550
>                 URL: https://issues.apache.org/jira/browse/HADOOP-1550
>             Project: Hadoop
>          Issue Type: Improvement
>          Components: contrib/hbase
>            Reporter: stack
>            Assignee: Bryan Duxbury
>             Fix For: 0.16.0
>
>         Attachments: 1550-v2.patch, 1550-v3.patch, 1550-v4.patch, 1550-v5.patch, 1550-v6.patch, 1550.patch
>
>
> There is no support in hbase currently for deleting a row -- i.e. remove all columns and their versions keyed by a particular row id.  Nor is there a means of passing in a row id and column family name having hbase delete all members of the column family (for the designated row).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Assigned: (HADOOP-1550) [hbase] No means of deleting a'row' nor all members of a column family

Posted by "Jim Kellerman (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HADOOP-1550?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jim Kellerman reassigned HADOOP-1550:
-------------------------------------

    Assignee:     (was: stack)

> [hbase] No means of deleting a'row' nor all members of a column family
> ----------------------------------------------------------------------
>
>                 Key: HADOOP-1550
>                 URL: https://issues.apache.org/jira/browse/HADOOP-1550
>             Project: Hadoop
>          Issue Type: Bug
>          Components: contrib/hbase
>            Reporter: stack
>            Priority: Minor
>
> There is no support in hbase currently for deleting a row -- i.e. remove all columns and their versions keyed by a particular row id.  Nor is there a means of passing in a row id and column family name having hbase delete all members of the column family (for the designated row).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (HADOOP-1550) [hbase] No means of deleting a'row' nor all members of a column family

Posted by "stack (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HADOOP-1550?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12548095 ] 

stack commented on HADOOP-1550:
-------------------------------

HADOOP-2339 does the last item mentioned above

> [hbase] No means of deleting a'row' nor all members of a column family
> ----------------------------------------------------------------------
>
>                 Key: HADOOP-1550
>                 URL: https://issues.apache.org/jira/browse/HADOOP-1550
>             Project: Hadoop
>          Issue Type: Improvement
>          Components: contrib/hbase
>            Reporter: stack
>            Priority: Minor
>
> There is no support in hbase currently for deleting a row -- i.e. remove all columns and their versions keyed by a particular row id.  Nor is there a means of passing in a row id and column family name having hbase delete all members of the column family (for the designated row).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (HADOOP-1550) [hbase] No means of deleting a'row' nor all members of a column family

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HADOOP-1550?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12549827 ] 

Hudson commented on HADOOP-1550:
--------------------------------

Integrated in Hadoop-Nightly #327 (See [http://lucene.zones.apache.org:8080/hudson/job/Hadoop-Nightly/327/])

> [hbase] No means of deleting a'row' nor all members of a column family
> ----------------------------------------------------------------------
>
>                 Key: HADOOP-1550
>                 URL: https://issues.apache.org/jira/browse/HADOOP-1550
>             Project: Hadoop
>          Issue Type: Improvement
>          Components: contrib/hbase
>            Reporter: stack
>            Assignee: Bryan Duxbury
>             Fix For: 0.16.0
>
>         Attachments: 1550-v2.patch, 1550-v3.patch, 1550-v4.patch, 1550-v5.patch, 1550-v6.patch, 1550.patch
>
>
> There is no support in hbase currently for deleting a row -- i.e. remove all columns and their versions keyed by a particular row id.  Nor is there a means of passing in a row id and column family name having hbase delete all members of the column family (for the designated row).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (HADOOP-1550) [hbase] No means of deleting a'row' nor all members of a column family

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HADOOP-1550?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12549698 ] 

Hudson commented on HADOOP-1550:
--------------------------------

Integrated in Hadoop-Nightly #326 (See [http://lucene.zones.apache.org:8080/hudson/job/Hadoop-Nightly/326/])

> [hbase] No means of deleting a'row' nor all members of a column family
> ----------------------------------------------------------------------
>
>                 Key: HADOOP-1550
>                 URL: https://issues.apache.org/jira/browse/HADOOP-1550
>             Project: Hadoop
>          Issue Type: Improvement
>          Components: contrib/hbase
>            Reporter: stack
>            Assignee: Bryan Duxbury
>             Fix For: 0.16.0
>
>         Attachments: 1550-v2.patch, 1550-v3.patch, 1550-v4.patch, 1550-v5.patch, 1550-v6.patch, 1550.patch
>
>
> There is no support in hbase currently for deleting a row -- i.e. remove all columns and their versions keyed by a particular row id.  Nor is there a means of passing in a row id and column family name having hbase delete all members of the column family (for the designated row).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (HADOOP-1550) [hbase] No means of deleting a'row' nor all members of a column family

Posted by "Bryan Duxbury (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HADOOP-1550?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Bryan Duxbury updated HADOOP-1550:
----------------------------------

    Attachment: 1550-v2.patch

There was some unnecessary garbage in HStore.java that this patch removes.

> [hbase] No means of deleting a'row' nor all members of a column family
> ----------------------------------------------------------------------
>
>                 Key: HADOOP-1550
>                 URL: https://issues.apache.org/jira/browse/HADOOP-1550
>             Project: Hadoop
>          Issue Type: Improvement
>          Components: contrib/hbase
>            Reporter: stack
>            Assignee: Bryan Duxbury
>         Attachments: 1550-v2.patch, 1550.patch
>
>
> There is no support in hbase currently for deleting a row -- i.e. remove all columns and their versions keyed by a particular row id.  Nor is there a means of passing in a row id and column family name having hbase delete all members of the column family (for the designated row).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (HADOOP-1550) [hbase] No means of deleting a'row' nor all members of a column family

Posted by "Jim Kellerman (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HADOOP-1550?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12549102 ] 

Jim Kellerman commented on HADOOP-1550:
---------------------------------------

Bryan Duxbury - 06/Dec/07 08:58 AM
> There was some unnecessary garbage in HStore.java that this patch removes. 

I see no changes to HStore in this patch. Please explain.

> [hbase] No means of deleting a'row' nor all members of a column family
> ----------------------------------------------------------------------
>
>                 Key: HADOOP-1550
>                 URL: https://issues.apache.org/jira/browse/HADOOP-1550
>             Project: Hadoop
>          Issue Type: Improvement
>          Components: contrib/hbase
>            Reporter: stack
>            Assignee: Bryan Duxbury
>         Attachments: 1550-v2.patch, 1550.patch
>
>
> There is no support in hbase currently for deleting a row -- i.e. remove all columns and their versions keyed by a particular row id.  Nor is there a means of passing in a row id and column family name having hbase delete all members of the column family (for the designated row).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (HADOOP-1550) [hbase] No means of deleting a'row' nor all members of a column family

Posted by "Jim Kellerman (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HADOOP-1550?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12511892 ] 

Jim Kellerman commented on HADOOP-1550:
---------------------------------------

If you delete all the values in a row, the row will become invisible until the region is compacted, at which point it will be removed.

However, the real issues here are:

- How do you (easily) delete a whole row?

- How do you (easily) delete all the members of a column family?

> [hbase] No means of deleting a'row' nor all members of a column family
> ----------------------------------------------------------------------
>
>                 Key: HADOOP-1550
>                 URL: https://issues.apache.org/jira/browse/HADOOP-1550
>             Project: Hadoop
>          Issue Type: Bug
>          Components: contrib/hbase
>            Reporter: stack
>            Assignee: stack
>            Priority: Minor
>
> There is no support in hbase currently for deleting a row -- i.e. remove all columns and their versions keyed by a particular row id.  Nor is there a means of passing in a row id and column family name having hbase delete all members of the column family (for the designated row).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (HADOOP-1550) [hbase] No means of deleting a'row' nor all members of a column family

Posted by "Bryan Duxbury (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HADOOP-1550?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Bryan Duxbury updated HADOOP-1550:
----------------------------------

    Attachment: 1550-v4.patch

Phew. This patch includes the missing TestDeleteAll, which is expanded to better test the deleteAll behavior, and it passes now. The local tests suite passed all except for TestScanner2, which has a known issue at the moment.

> [hbase] No means of deleting a'row' nor all members of a column family
> ----------------------------------------------------------------------
>
>                 Key: HADOOP-1550
>                 URL: https://issues.apache.org/jira/browse/HADOOP-1550
>             Project: Hadoop
>          Issue Type: Improvement
>          Components: contrib/hbase
>            Reporter: stack
>            Assignee: Bryan Duxbury
>         Attachments: 1550-v2.patch, 1550-v3.patch, 1550-v4.patch, 1550.patch
>
>
> There is no support in hbase currently for deleting a row -- i.e. remove all columns and their versions keyed by a particular row id.  Nor is there a means of passing in a row id and column family name having hbase delete all members of the column family (for the designated row).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Assigned: (HADOOP-1550) [hbase] No means of deleting a'row' nor all members of a column family

Posted by "Bryan Duxbury (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HADOOP-1550?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Bryan Duxbury reassigned HADOOP-1550:
-------------------------------------

    Assignee: Bryan Duxbury

> [hbase] No means of deleting a'row' nor all members of a column family
> ----------------------------------------------------------------------
>
>                 Key: HADOOP-1550
>                 URL: https://issues.apache.org/jira/browse/HADOOP-1550
>             Project: Hadoop
>          Issue Type: Improvement
>          Components: contrib/hbase
>            Reporter: stack
>            Assignee: Bryan Duxbury
>
> There is no support in hbase currently for deleting a row -- i.e. remove all columns and their versions keyed by a particular row id.  Nor is there a means of passing in a row id and column family name having hbase delete all members of the column family (for the designated row).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (HADOOP-1550) [hbase] No means of deleting a'row' nor all members of a column family

Posted by "stack (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HADOOP-1550?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12526246 ] 

stack commented on HADOOP-1550:
-------------------------------

After playing in HADOOP-1784, here's some thoughts on this issue.

HADOOP-1784 added deleteAll.  It takes a timestamp and a column name.  Internally it asks a new getKeys method for a list of all keys that match the passed column and that are older than or equal to the passed timestamp.

To delete a whole row, we could add a deleteAll that just took a timestamp and a version of getKeys that returned all entries on a row -- not just all entries in a row that match the passed column.  This new deleteAll would then work like the current deleteAll adding a delete cell for every key returned by the getKeys call.

Deleting all members of a column family would be a matter of removing all store files under the column family HStore (and any matching entries in memcache).

> [hbase] No means of deleting a'row' nor all members of a column family
> ----------------------------------------------------------------------
>
>                 Key: HADOOP-1550
>                 URL: https://issues.apache.org/jira/browse/HADOOP-1550
>             Project: Hadoop
>          Issue Type: Bug
>          Components: contrib/hbase
>            Reporter: stack
>            Priority: Minor
>
> There is no support in hbase currently for deleting a row -- i.e. remove all columns and their versions keyed by a particular row id.  Nor is there a means of passing in a row id and column family name having hbase delete all members of the column family (for the designated row).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (HADOOP-1550) [hbase] No means of deleting a'row' nor all members of a column family

Posted by "stack (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HADOOP-1550?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12549112 ] 

stack commented on HADOOP-1550:
-------------------------------

Couple of comments on patch B:

+ The public HTable.deleteAll methods needs javadoc (Whats there is not javadoc). 
+ The javadoc in HRegionInterface looks like it was copy/pasted (I think your patch will fail in the javadoc validation up on hudson).  Same in HRegion.

> [hbase] No means of deleting a'row' nor all members of a column family
> ----------------------------------------------------------------------
>
>                 Key: HADOOP-1550
>                 URL: https://issues.apache.org/jira/browse/HADOOP-1550
>             Project: Hadoop
>          Issue Type: Improvement
>          Components: contrib/hbase
>            Reporter: stack
>            Assignee: Bryan Duxbury
>         Attachments: 1550-v2.patch, 1550.patch
>
>
> There is no support in hbase currently for deleting a row -- i.e. remove all columns and their versions keyed by a particular row id.  Nor is there a means of passing in a row id and column family name having hbase delete all members of the column family (for the designated row).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (HADOOP-1550) [hbase] No means of deleting a'row' nor all members of a column family

Posted by "Bryan Duxbury (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HADOOP-1550?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12549108 ] 

Bryan Duxbury commented on HADOOP-1550:
---------------------------------------

I meant that the original patch (1550.patch) had added some garbage  
to HStore.java which I removed in the second patch, since it wasn't  
used for anything.





> [hbase] No means of deleting a'row' nor all members of a column family
> ----------------------------------------------------------------------
>
>                 Key: HADOOP-1550
>                 URL: https://issues.apache.org/jira/browse/HADOOP-1550
>             Project: Hadoop
>          Issue Type: Improvement
>          Components: contrib/hbase
>            Reporter: stack
>            Assignee: Bryan Duxbury
>         Attachments: 1550-v2.patch, 1550.patch
>
>
> There is no support in hbase currently for deleting a row -- i.e. remove all columns and their versions keyed by a particular row id.  Nor is there a means of passing in a row id and column family name having hbase delete all members of the column family (for the designated row).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (HADOOP-1550) [hbase] No means of deleting a'row' nor all members of a column family

Posted by "Hadoop QA (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HADOOP-1550?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12549615 ] 

Hadoop QA commented on HADOOP-1550:
-----------------------------------

+1 overall.  Here are the results of testing the latest attachment 
http://issues.apache.org/jira/secure/attachment/12371266/1550-v6.patch
against trunk revision r602256.

    @author +1.  The patch does not contain any @author tags.

    javadoc +1.  The javadoc tool did not generate any warning messages.

    javac +1.  The applied patch does not generate any new compiler warnings.

    findbugs +1.  The patch does not introduce any new Findbugs warnings.

    core tests +1.  The patch passed core unit tests.

    contrib tests +1.  The patch passed contrib unit tests.

Test results: http://lucene.zones.apache.org:8080/hudson/job/Hadoop-Patch/1299/testReport/
Findbugs warnings: http://lucene.zones.apache.org:8080/hudson/job/Hadoop-Patch/1299/artifact/trunk/build/test/findbugs/newPatchFindbugsWarnings.html
Checkstyle results: http://lucene.zones.apache.org:8080/hudson/job/Hadoop-Patch/1299/artifact/trunk/build/test/checkstyle-errors.html
Console output: http://lucene.zones.apache.org:8080/hudson/job/Hadoop-Patch/1299/console

This message is automatically generated.

> [hbase] No means of deleting a'row' nor all members of a column family
> ----------------------------------------------------------------------
>
>                 Key: HADOOP-1550
>                 URL: https://issues.apache.org/jira/browse/HADOOP-1550
>             Project: Hadoop
>          Issue Type: Improvement
>          Components: contrib/hbase
>            Reporter: stack
>            Assignee: Bryan Duxbury
>         Attachments: 1550-v2.patch, 1550-v3.patch, 1550-v4.patch, 1550-v5.patch, 1550-v6.patch, 1550.patch
>
>
> There is no support in hbase currently for deleting a row -- i.e. remove all columns and their versions keyed by a particular row id.  Nor is there a means of passing in a row id and column family name having hbase delete all members of the column family (for the designated row).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (HADOOP-1550) [hbase] No means of deleting a'row' nor all members of a column family

Posted by "Bryan Duxbury (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HADOOP-1550?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Bryan Duxbury updated HADOOP-1550:
----------------------------------

    Status: Open  (was: Patch Available)

Stack was right. My test case was under-done. After expanding the test cases, it was clear that the patch didn't work.

> [hbase] No means of deleting a'row' nor all members of a column family
> ----------------------------------------------------------------------
>
>                 Key: HADOOP-1550
>                 URL: https://issues.apache.org/jira/browse/HADOOP-1550
>             Project: Hadoop
>          Issue Type: Improvement
>          Components: contrib/hbase
>            Reporter: stack
>            Assignee: Bryan Duxbury
>         Attachments: 1550-v2.patch, 1550-v3.patch, 1550.patch
>
>
> There is no support in hbase currently for deleting a row -- i.e. remove all columns and their versions keyed by a particular row id.  Nor is there a means of passing in a row id and column family name having hbase delete all members of the column family (for the designated row).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (HADOOP-1550) [hbase] No means of deleting a'row' nor all members of a column family

Posted by "stack (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HADOOP-1550?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12549222 ] 

stack commented on HADOOP-1550:
-------------------------------

v3 is missing the unit test that was present in v2.  Is that intentional?

Looking at the v2 unit test, it adds values to column families only -- not to qualified column families.  Does the deletaAll work if the you add a value to COLUMN_FAMILY[0] + "some_qualifier"?

> [hbase] No means of deleting a'row' nor all members of a column family
> ----------------------------------------------------------------------
>
>                 Key: HADOOP-1550
>                 URL: https://issues.apache.org/jira/browse/HADOOP-1550
>             Project: Hadoop
>          Issue Type: Improvement
>          Components: contrib/hbase
>            Reporter: stack
>            Assignee: Bryan Duxbury
>         Attachments: 1550-v2.patch, 1550-v3.patch, 1550.patch
>
>
> There is no support in hbase currently for deleting a row -- i.e. remove all columns and their versions keyed by a particular row id.  Nor is there a means of passing in a row id and column family name having hbase delete all members of the column family (for the designated row).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (HADOOP-1550) [hbase] No means of deleting a'row' nor all members of a column family

Posted by "Bryan Duxbury (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HADOOP-1550?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Bryan Duxbury updated HADOOP-1550:
----------------------------------

    Priority: Major  (was: Minor)

Seems like this is pretty important for the API to be complete. Elevating to Major.

> [hbase] No means of deleting a'row' nor all members of a column family
> ----------------------------------------------------------------------
>
>                 Key: HADOOP-1550
>                 URL: https://issues.apache.org/jira/browse/HADOOP-1550
>             Project: Hadoop
>          Issue Type: Improvement
>          Components: contrib/hbase
>            Reporter: stack
>
> There is no support in hbase currently for deleting a row -- i.e. remove all columns and their versions keyed by a particular row id.  Nor is there a means of passing in a row id and column family name having hbase delete all members of the column family (for the designated row).

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.