Ao adicionar dados ao cluster de cassandra do C #, recebo uma exceção

1

A partir de C # quando tento adicionar dados a um cluster de cassandra, recebo esta exceção:

{Not enough replicas available for query at consistency One (1 required but only 0 alive)"}

Quando executo o nodetool de um dos nós, obtenho o mesmo resultado. A única coisa que parece estranha é o nome do datacenter, "168". Eu posso esclarecer mais, se necessário.

adminuser@adminuser-VirtualBox:/home/cassandra/apache-cassandra-2.1.0/conf$ ../bin

/nodetool status
Note: Ownership information does not include topology; for complete information, specify a keyspace
Datacenter: 168
===============
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
--  Address      Load       Tokens  Owns    Host ID                               Rack
UN  192.168.1.3  79.75 KB   1       25.0%   af524aa1-16b3-48b7-96bf-3531c7c18903  1
UN  192.168.1.2  46.2 KB    1       75.0%   bc2520b8-a41f-4eb5-9648-867a016c5e01  1
adminuser@adminuser-VirtualBox:/home/cassandra/apache-cassandra-2.1.0/conf$

Se eu especificar o espaço de chaves

adminuser@adminuser-VirtualBox:/home/cassandra/apache-cassandra-2.1.0/conf$ ../bin

/nodetool status timeseries
Datacenter: 168
===============
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
--  Address      Load       Tokens  Owns (effective)  Host ID                               Rack
UN  192.168.1.3  79.75 KB   1       0.0%              af524aa1-16b3-48b7-96bf-3531c7c18903  1
UN  192.168.1.2  46.2 KB    1       0.0%              bc2520b8-a41f-4eb5-9648-867a016c5e01  1
adminuser@adminuser-VirtualBox:/home/cassandra/apache-cassandra-2.1.0/conf$ 

EDITAR:

Eu modifiquei a propriedade em cassandra.yaml em ambos os nós para usar o arquivo cassandra-topology.yaml

endpoint_snitch: PropertyFileSnitch

e agora o status do nodetool parece mais normal:

Datacenter: DC1
===============
Status=Up/Down
|/ State=Normal/Leaving/Joining/Moving
--  Address      Load       Tokens  Owns    Host ID                               Rack
UN  192.168.1.3  152.15 KB  1       25.0%   af524aa1-16b3-48b7-96bf-3531c7c18903  r1
UN  192.168.1.2  114.1 KB   1       75.0%   bc2520b8-a41f-4eb5-9648-867a016c5e01  r1
adminuser@adminuser-VirtualBox:/home/cassandra/apache-cassandra-2.1.0/bin$ 

No entanto, ainda recebo a mesma exceção do C #.

Mais um esclarecimento, criei o espaço de chaves assim:

cqlsh> create keyspace timeseries WITH REPLICATION =   { 'class' : 'NetworkTopologyStrategy', 'datacenter1' : 3 };

Acho que esse pode ser o problema ...

EDITAR

Eu percebi isso. Eu tive que dizer:

cqlsh> create keyspace timeseries WITH REPLICATION =   { 'class' : 'NetworkTopologyStrategy', 'DC1' : 2 };

Agora os dados são gravados corretamente em C # e vejo os dados nos dois nós.

    
por Ivan 28.10.2014 / 01:56

0 respostas

Tags