What is the ConsistencyLevel value? Is it ConsistencyLevel.ANY?
* Write consistency levels make the following guarantees before reporting success to the client:
* ANY Ensure that the write has been written once somewhere, including possibly being hinted in a non-target node.
* ONE Ensure that the write has been written to at least 1 node's commit log and memory table
* QUORUM Ensure that the write has been written to <ReplicationFactor> / 2 + 1 nodes
* LOCAL_QUORUM Ensure that the write has been written to <ReplicationFactor> / 2 + 1 nodes, within the local datacenter (requires NetworkTopologyStrategy)
* EACH_QUORUM Ensure that the write has been written to <ReplicationFactor> / 2 + 1 nodes in each datacenter (requires NetworkTopologyStrategy)
* ALL Ensure that the write is written to <code><ReplicationFactor></code> nodes before responding to the client.
I have a basic question - maybe silly too.
Say, I have a 1-node Cassandra setup (no replication, eventual consistency, etc) and I do an insert into a column family and then very close in time to the insert, I do a read on it for the same data.
Is there a possibility that my read operation may miss the data that just got inserted?
Since there are no DB transactions in Cassandra, are writes immediately seen to readers - even partially as they get written?
Or can there be a delay sometimes due to flusing-to-SSTables, etc?
Or, the writes are first in-memory and immediately visible to readers and flusing, etc is independent of all this and happens in background?