David --

What version of Accumulo? Can you share a snippet of code (or, ideally, a executable example we can run) in which you're using the BatchScanner?

Generally speaking, it appears that one of the BatchScanner threads was finished, trying to return the Thrift connection to the pool, but the underlying socket was already closed (assumably, by someone else). Sounds like a race condition, multiple close()'s happening perhaps.

David Boyd wrote:
All:

I am getting this stack trace periodically based on no pattern I can
determine from my application.

Is this a message I should be worried about?

What is a technique to trace this back to my code and the cause?

Obviously something is closing things before the thread closes it.


2017-04-19 12:33:53,423 | WARN | [batch scanner 19824- 8 looking up 1
ranges at accumulodev:9997] | (TIOStreamTransport.java:112) - Error
closing output stream.
java.io.IOException: The stream is closed
at
org.apache.hadoop.net.SocketOutputStream.write(SocketOutputStream.java:118)

at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:82)
at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:140)
at java.io.FilterOutputStream.close(FilterOutputStream.java:158)
at
org.apache.thrift.transport.TIOStreamTransport.close(TIOStreamTransport.java:110)

at
org.apache.thrift.transport.TFramedTransport.close(TFramedTransport.java:89)

at
org.apache.accumulo.core.client.impl.ThriftTransportPool$CachedTTransport.close(ThriftTransportPool.java:309)

at
org.apache.accumulo.core.client.impl.ThriftTransportPool.returnTransport(ThriftTransportPool.java:571)

at
org.apache.accumulo.core.rpc.ThriftUtil.returnClient(ThriftUtil.java:151)
at
org.apache.accumulo.core.client.impl.TabletServerBatchReaderIterator.doLookup(TabletServerBatchReaderIterator.java:686)

at
org.apache.accumulo.core.client.impl.TabletServerBatchReaderIterator$QueryTask.run(TabletServerBatchReaderIterator.java:349)

at org.apache.htrace.wrappers.TraceRunnable.run(TraceRunnable.java:57)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)

at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)

at
org.apache.accumulo.fate.util.LoggingRunnable.run(LoggingRunnable.java:35)

at java.lang.Thread.run(Thread.java:745)


Reply via email to