hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ted Yu (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-6707) TEST org.apache.hadoop.hbase.backup.example.TestZooKeeperTableArchiveClient.testMultipleTables flaps
Date Thu, 04 Oct 2012 20:15:47 GMT

    [ https://issues.apache.org/jira/browse/HBASE-6707?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13469645#comment-13469645
] 

Ted Yu commented on HBASE-6707:
-------------------------------

I think this hunk is not needed:
{code}
@@ -50,16 +50,14 @@ public class LongTermArchivingHFileCleaner extends BaseHFileCleanerDelegate
{
   @Override
   public boolean isFileDeletable(Path file) {
     try {
+      // if its a directory, then it can be deleted
+      if (!fs.isFile(file)) return true;

+      // check to see if
       FileStatus[] deleteStatus = FSUtils.listStatus(this.fs, file, null);
       // if the file doesn't exist, then it can be deleted (but should never
       // happen since deleted files shouldn't get passed in)
       if (deleteStatus == null) return true;
-      // if its a directory with stuff in it, don't delete
-      if (deleteStatus.length > 1) return false;
-
-      // if its an empty directory, we can definitely delete
-      if (deleteStatus[0].isDir()) return true;

       // otherwise, we need to check the file's table and see its being archived
       Path family = file.getParent();
{code}
I placed breakpoint on the following line in the debugger:
{code}
+      if (!fs.isFile(file)) return true;
{code}
file turned out to be empty every time when it was a directory.

Without the above hunk, test still passed in a loop (on jdk 1.7).
                
> TEST org.apache.hadoop.hbase.backup.example.TestZooKeeperTableArchiveClient.testMultipleTables
flaps
> ----------------------------------------------------------------------------------------------------
>
>                 Key: HBASE-6707
>                 URL: https://issues.apache.org/jira/browse/HBASE-6707
>             Project: HBase
>          Issue Type: Bug
>          Components: test
>            Reporter: Sameer Vaishampayan
>            Assignee: Jesse Yates
>            Priority: Critical
>             Fix For: 0.96.0
>
>         Attachments: hbase-6707-v0.patch, hbase-6707-v1.patch, hbase-6707-v2.patch, hbase-6707-v3.patch,
hbase-6707-v4-addendum.patch, hbase-6707-v4.patch
>
>
> https://builds.apache.org/job/HBase-TRUNK/3293/
> Error Message
> Archived HFiles (hdfs://localhost:59986/user/jenkins/hbase/.archive/otherTable/01ced3b55d7220a9c460273a4a57b198/fam)
should have gotten deleted, but didn't, remaining files:[hdfs://localhost:59986/user/jenkins/hbase/.archive/otherTable/01ced3b55d7220a9c460273a4a57b198/fam/fc872572a1f5443eb55b6e2567cfeb1c]
> Stacktrace
> java.lang.AssertionError: Archived HFiles (hdfs://localhost:59986/user/jenkins/hbase/.archive/otherTable/01ced3b55d7220a9c460273a4a57b198/fam)
should have gotten deleted, but didn't, remaining files:[hdfs://localhost:59986/user/jenkins/hbase/.archive/otherTable/01ced3b55d7220a9c460273a4a57b198/fam/fc872572a1f5443eb55b6e2567cfeb1c]
> 	at org.junit.Assert.fail(Assert.java:93)
> 	at org.junit.Assert.assertTrue(Assert.java:43)
> 	at org.junit.Assert.assertNull(Assert.java:551)
> 	at org.apache.hadoop.hbase.backup.example.TestZooKeeperTableArchiveClient.testMultipleTables(TestZooKeeperTableArchiveClient.java:291)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

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

Mime
View raw message