cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Brandon Williams (JIRA)" <j...@apache.org>
Subject [jira] [Issue Comment Edited] (CASSANDRA-1405) Switch to THsHaServer, redux
Date Wed, 20 Jul 2011 23:05:58 GMT

    [ https://issues.apache.org/jira/browse/CASSANDRA-1405?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13068695#comment-13068695
] 

Brandon Williams edited comment on CASSANDRA-1405 at 7/20/11 11:05 PM:
-----------------------------------------------------------------------

This looks good, but a couple of things:

{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 shouldn't 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.

      was (Author: brandon.williams):
    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

        

Mime
View raw message