hadoop-hdfs-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Andrew Ryan (JIRA)" <j...@apache.org>
Subject [jira] Created: (HDFS-871) Balancer can hang in PendingBlockMove
Date Wed, 06 Jan 2010 17:01:55 GMT
Balancer can hang in PendingBlockMove

                 Key: HDFS-871
                 URL: https://issues.apache.org/jira/browse/HDFS-871
             Project: Hadoop HDFS
          Issue Type: Bug
          Components: balancer
    Affects Versions: 0.20.1
         Environment: Yahoo 0.20
            Reporter: Andrew Ryan

We started the balancer, with default options (-threshold 10), and it ran fine for a few hours,
then hung. The process was still alive but no balancing was taking place.

At the time of the hang, jstack showed there were three threads in RUNNABLE status. Subsequent
jstacks taken minutes and hours later showed the same three threads running in the same place,
so I don't think this was a case where requests were being restarted, it looks like hangs.
My best guess is, there's no timeout in the request to the namenode for these requests, and
there needs to be.

I'll attach the full jstack output, but here's a sample thread, they are all stuck in the
same place.

"pool-1-thread-972" prio=10 tid=0x00002aaafc23a800 nid=0x27a8 runnable [0x00002a
   java.lang.Thread.State: RUNNABLE
        at java.net.SocketInputStream.socketRead0(Native Method)
        at java.net.SocketInputStream.read(SocketInputStream.java:129)
        at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
        at java.io.BufferedInputStream.read(BufferedInputStream.java:237)
        - locked <0x00002aaaebdbe158> (a java.io.BufferedInputStream)
        at java.io.DataInputStream.readShort(DataInputStream.java:295)
        at org.apache.hadoop.hdfs.server.balancer.Balancer$PendingBlockMove.receiveResponse(Balancer.java:371)
        at org.apache.hadoop.hdfs.server.balancer.Balancer$PendingBlockMove.dispatch(Balancer.java:326)
        at org.apache.hadoop.hdfs.server.balancer.Balancer$PendingBlockMove.access$1800(Balancer.java:232)
        at org.apache.hadoop.hdfs.server.balancer.Balancer$PendingBlockMove$1.run(Balancer.java:393)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
        at java.lang.Thread.run(Thread.java:619)

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

View raw message