hbase-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Ted Yu <yuzhih...@gmail.com>
Subject Re: failed unit test due to locked directory
Date Mon, 08 Aug 2011 22:31:36 GMT
We use MiniDFSCluster whose startDataNodes() calls:
      DataNode.runDatanodeDaemon(dn);
where I see this:
      dn.dataNodeThread.setDaemon(true); // needed for JUnit testing

FYI

On Mon, Aug 8, 2011 at 11:08 AM, Jean-Daniel Cryans <jdcryans@apache.org>wrote:

> Wouldn't it be better if the DNs were daemons?
>
> J-D
>
> On Mon, Aug 8, 2011 at 9:18 AM, Ted Yu <yuzhihong@gmail.com> wrote:
> > Hi,
> > You may have noticed unit test failures with message similar to the
> > following:
> >  testInfoServersRedirect(org.apache.hadoop.hbase.TestInfoServers): Cannot
> > lock storage /home/hadoop/hbase/build/hbase/test/dfs/name1. The directory
> is
> > already locked.
> >  testInfoServersStatusPages(org.apache.hadoop.hbase.TestInfoServers):
> > Cannot lock storage /home/hadoop/hbase/build/hbase/test/dfs/name1. The
> > directory is already locked.
> > This indicated that certain JVMClusterUtil was hanging after the
> underlying
> > unit test finished.
> >
> > I suggest making the following change to JVMClusterUtil:
> >
> > Index: src/main/java/org/apache/hadoop/hbase/util/JVMClusterUtil.java
> > ===================================================================
> > --- src/main/java/org/apache/hadoop/hbase/util/JVMClusterUtil.java
> > (revision 1154705)
> > +++ src/main/java/org/apache/hadoop/hbase/util/JVMClusterUtil.java
> > (working copy)
> > @@ -44,6 +44,7 @@
> >     public RegionServerThread(final HRegionServer r, final int index) {
> >       super(r, "RegionServer:" + index + ";" + r.getServerName());
> >       this.regionServer = r;
> > +      this.setDaemon(true);
> >     }
> >
> >     /** @return the region server */
> > @@ -110,6 +111,7 @@
> >     public MasterThread(final HMaster m, final int index) {
> >       super(m, "Master:" + index + ";" + m.getServerName());
> >       this.master = m;
> > +      this.setDaemon(true);
> >     }
> >
> >     /** @return the master */
> >
> > Please comment.
> >
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message