[ https://issues.apache.org/jira/browse/CASSANDRA-1405?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13068695#comment-13068695 ]
Brandon Williams commented on CASSANDRA-1405: --------------------------------------------- This looks good, but a couple of thing: {noformat} WARN 23:01:42,331 Got an IOException in internalRead! java.io.IOException: Connection reset by peer at sun.nio.ch.FileDispatcher.read0(Native Method) at sun.nio.ch.SocketDispatcher.read(SocketDispatcher.java:21) at sun.nio.ch.IOUtil.readIntoNativeBuffer(IOUtil.java:202) at sun.nio.ch.IOUtil.read(IOUtil.java:175) at sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:243) at org.apache.thrift.transport.TNonblockingSocket.read(TNonblockingSocket.java:141) at org.apache.thrift.server.TNonblockingServer$FrameBuffer.internalRead(TNonblockingServer.java:668) at org.apache.thrift.server.TNonblockingServer$FrameBuffer.read(TNonblockingServer.java:457) at org.apache.cassandra.thrift.CustomTHsHaServer$SelectorThread.handleRead(CustomTHsHaServer.java:228) at org.apache.cassandra.thrift.CustomTHsHaServer$SelectorThread.select(CustomTHsHaServer.java:185) at org.apache.cassandra.thrift.CustomTHsHaServer$SelectorThread.run(CustomTHsHaServer.java:157) {noformat} Let's push this to debug, the user should care if a client closed the socket. This was in hsha mode, but a similar exception is raised for async (sync is silent though.) Cursory perf test shows async to be about 50% slower than sync, but hsha appears nearly 20% faster. > Switch to THsHaServer, redux > ---------------------------- > > Key: CASSANDRA-1405 > URL: https://issues.apache.org/jira/browse/CASSANDRA-1405 > Project: Cassandra > Issue Type: Improvement > Components: API > Reporter: Jonathan Ellis > Assignee: Vijay > Priority: Minor > Fix For: 0.8.2 > > Attachments: 1405-Thrift-Patch-SVN.patch, libthrift-r1026391.jar, > trunk-1405.patch > > > Brian's patch to CASSANDRA-876 suggested using a custom TProcessorFactory > subclass, overriding getProcessor to reset to a default state when a new > client connects. It looks like this would allow dropping > CustomTThreadPoolServer as well as allowing non-thread based servers. -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira