zookeeper-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Patrick Hunt <ph...@apache.org>
Subject Re: Too many "Broken pipe" in ZooKeeper log
Date Wed, 17 Sep 2014 05:00:40 GMT
Looks like a client is calling the "dump" 4lw and not waiting for the
results before closing the socket. Try tracking down where that
command is called from. The logs should have something like this in
it:

2014-09-16 21:59:11,407 [myid:1] - INFO
[NIOWorkerThread-2:NIOServerCnxn@835] - Processing dump command from
/127.0.0.1:51740

(note the ip address)

Patrick

On Tue, Sep 16, 2014 at 7:57 PM, tobe <tobeg3oogle@gmail.com> wrote:
> Can any one help to explain why I get so many "Broken pipe IOE" in
> ZooKeeper log?
>
> ZooKeeper throws this exception almost every minute. I don't think we use
> the four letter command to dumpWatches so frequently. So what does this
> mean?
>
> 2014-09-17,10:52:09,179 ERROR org.apache.zookeeper.server.NIOServerCnxn:
> [myid:0] Error sending data synchronously
> java.io.IOException: Broken pipe
>         at sun.nio.ch.FileDispatcher.write0(Native Method)
>         at sun.nio.ch.SocketDispatcher.write(SocketDispatcher.java:29)
>         at sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:69)
>         at sun.nio.ch.IOUtil.write(IOUtil.java:40)
>         at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:336)
>         at
> org.apache.zookeeper.server.NIOServerCnxn.sendBufferSync(NIOServerCnxn.java:138)
>         at
> org.apache.zookeeper.server.NIOServerCnxn$SendBufferWriter.checkFlush(NIOServerCnxn.java:453)
>         at
> org.apache.zookeeper.server.NIOServerCnxn$SendBufferWriter.write(NIOServerCnxn.java:474)
>         at java.io.BufferedWriter.flushBuffer(BufferedWriter.java:111)
>         at java.io.BufferedWriter.write(BufferedWriter.java:212)
>         at java.io.PrintWriter.write(PrintWriter.java:412)
>         at java.io.PrintWriter.write(PrintWriter.java:429)
>         at java.io.PrintWriter.print(PrintWriter.java:559)
>         at java.io.PrintWriter.println(PrintWriter.java:695)
>         at
> org.apache.zookeeper.server.WatchManager.dumpWatches(WatchManager.java:166)
>         at
> org.apache.zookeeper.server.DataTree.dumpWatches(DataTree.java:1240)
>         at
> org.apache.zookeeper.server.NIOServerCnxn$WatchCommand.commandRun(NIOServerCnxn.java:722)
>         at
> org.apache.zookeeper.server.NIOServerCnxn$CommandThread.run(NIOServerCnxn.java:496)
> 2014-09-17,10:52:09,179 INFO org.apache.zookeeper.server.NIOServerCnxn:
> [myid:0] Closed socket connection for client /10.20.201.234:53756 which had
> sessionid 0x34840357f664081
> 2014-09-17,10:52:09,179 ERROR org.apache.zookeeper.server.NIOServerCnxn:
> [myid:0] Error sending data synchronously
> java.io.IOException: Broken pipe
>         at sun.nio.ch.FileDispatcher.write0(Native Method)
>         at sun.nio.ch.SocketDispatcher.write(SocketDispatcher.java:29)
>         at sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:69)
>         at sun.nio.ch.IOUtil.write(IOUtil.java:40)
>         at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:336)
>         at
> org.apache.zookeeper.server.NIOServerCnxn.sendBufferSync(NIOServerCnxn.java:138)
>         at
> org.apache.zookeeper.server.NIOServerCnxn$SendBufferWriter.checkFlush(NIOServerCnxn.java:453)
>         at
> org.apache.zookeeper.server.NIOServerCnxn$SendBufferWriter.write(NIOServerCnxn.java:474)
>         at java.io.BufferedWriter.flushBuffer(BufferedWriter.java:111)
>         at java.io.BufferedWriter.flush(BufferedWriter.java:235)
>         at java.io.PrintWriter.flush(PrintWriter.java:276)
>         at
> org.apache.zookeeper.server.NIOServerCnxn.cleanupWriterSocket(NIOServerCnxn.java:424)
>         at
> org.apache.zookeeper.server.NIOServerCnxn.access$000(NIOServerCnxn.java:60)
>         at
> org.apache.zookeeper.server.NIOServerCnxn$CommandThread.run(NIOServerCnxn.java:500)

Mime
View raw message