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

tholzer commented on CASSANDRA-1111:
------------------------------------

I can reproduce this with the following:

Linux & Python 2.6.4

{noformat}
from thrift.transport.TSocket import TSocket
from thrift.protocol.TBinaryProtocol import TBinaryProtocol
from cassandra.Cassandra import Client

if __name__ == "__main__":
    tsocket = TSocket('localhost', 9160)
    tsocket.open()
    tprotocol = TBinaryProtocol(tsocket)
    client = Client(tprotocol)
    keyspaces = client.describe_keyspaces()
    for keyspace in keyspaces:
        print "%s" % client.describe_ring(keyspace)
{noformat}

Output:
{noformat}
[TokenRange(end_token='107294900513650794844962875501795914878', 
start_token='107294900513650794844962875501795914878', endpoints=['127.0.0.1'])]
Traceback (most recent call last):
  File "test/t1.py", line 13, in <module>
    print "%s" % client.describe_ring(keyspace)
  File "cassandra/Cassandra.py", line 964, in describe_ring
    return self.recv_describe_ring()
  File "cassandra/Cassandra.py", line 975, in recv_describe_ring
    (fname, mtype, rseqid) = self._iprot.readMessageBegin()
  File "thrift/protocol/TBinaryProtocol.py", line 126, in readMessageBegin
    sz = self.readI32()
  File "thrift/protocol/TBinaryProtocol.py", line 203, in readI32
    buff = self.trans.readAll(4)
  File "thrift/transport/TTransport.py", line 58, in readAll
    chunk = self.read(sz-have)
  File "thrift/transport/TSocket.py", line 94, in read
    raise TTransportException(type=TTransportException.END_OF_FILE, 
message='TSocket read 0 bytes')
thrift.transport.TTransport.TTransportException: TSocket read 0 bytes
{noformat}

Server log:
{noformat}
ERROR 16:40:55,288 Error occurred during processing of message.
java.lang.RuntimeException: No replica strategy configured for system
        at 
org.apache.cassandra.service.StorageService.getReplicationStrategy(StorageService.java:246)
        at 
org.apache.cassandra.service.StorageService.constructRangeToEndPointMap(StorageService.java:457)
        at 
org.apache.cassandra.service.StorageService.getRangeToAddressMap(StorageService.java:443)
        at 
org.apache.cassandra.service.StorageService.getRangeToEndPointMap(StorageService.java:433)
        at 
org.apache.cassandra.thrift.CassandraServer.describe_ring(CassandraServer.java:628)
        at 
org.apache.cassandra.thrift.Cassandra$Processor$describe_ring.process(Cassandra.java:1781)
        at 
org.apache.cassandra.thrift.Cassandra$Processor.process(Cassandra.java:1125)
        at 
org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:253)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
        at java.lang.Thread.run(Thread.java:619)
{noformat}


> describe_ring() throws on single node clusters and/or probably clusters 
> without a replication factor
> ----------------------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-1111
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-1111
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 0.6
>         Environment: Mac OS X Snow Leopard
>            Reporter: Dominic Williams
>            Assignee: Gary Dusbabek
>             Fix For: 0.6.2
>
>   Original Estimate: 0.75h
>  Remaining Estimate: 0.75h
>
> You use Thrift to call describe_ring() on a cluster with only a single node. 
> The Thrift connection is broken, and the system.log shows the exception that 
> has been thrown:
> ERROR [pool-1-thread-15] 2010-05-20 13:15:24,753 TThreadPoolServer.java (line 
> 259) Error occurred during processing of message.
> java.lang.RuntimeException: No replica strategy configured for L1AbuseReports
>         at 
> org.apache.cassandra.service.StorageService.getReplicationStrategy(StorageService.java:246)
>         at 
> org.apache.cassandra.service.StorageService.constructRangeToEndPointMap(StorageService.java:457)
>         at 
> org.apache.cassandra.service.StorageService.getRangeToAddressMap(StorageService.java:443)
>         at 
> org.apache.cassandra.service.StorageService.getRangeToEndPointMap(StorageService.java:433)
>         at 
> org.apache.cassandra.thrift.CassandraServer.describe_ring(CassandraServer.java:628)
>         at 
> org.apache.cassandra.thrift.Cassandra$Processor$describe_ring.process(Cassandra.java:1781)
>         at 
> org.apache.cassandra.thrift.Cassandra$Processor.process(Cassandra.java:1125)
>         at 
> org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:253)
>         at 
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>         at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>         at java.lang.Thread.run(Thread.java:637)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to