cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sylvain Lebresne (JIRA)" <j...@apache.org>
Subject [jira] [Created] (CASSANDRA-5699) Streaming (2.0) can deadlock
Date Tue, 25 Jun 2013 14:58:22 GMT
Sylvain Lebresne created CASSANDRA-5699:
-------------------------------------------

             Summary: Streaming (2.0) can deadlock
                 Key: CASSANDRA-5699
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-5699
             Project: Cassandra
          Issue Type: Bug
            Reporter: Sylvain Lebresne
            Assignee: Sylvain Lebresne
             Fix For: 2.0 beta 1


The new streaming implementation (CASSANDRA-5286) creates 2 threads per host for streaming,
one for the incoming stream and one for the outgoing one. However, both currently share the
same socket, but since we use synchronous I/O, a read can block a write, which can result
in a deadlock if 2 nodes are both blocking on a read a the same time, thus blocking their
respective writes (this is actually fairly easy to reproduce with a simple repair).

So instead attaching a patch that uses one socket per thread.

The patch also correct the stream throughput throttling calculation that was 8000 times lower
than what it should be.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message