Ho provato a creare alcuni utenti per i miei test. Ho creato utenti in un ciclo da 0..1000 utilizzando la gemma cassandra-cql per Ruby on Rails, quindi ho contato gli utenti nel mio database e ne risultavano solo 10000 utenti. Se creo 9000, tutto funziona correttamente. Innanzitutto pensavo che gli utenti non esistessero, ma ho usato Apollo WebUI per Cassandra, e ho potuto trovare l'utente con l'id 100000 e gli utenti di seguito. Perché succede?Conteggio errato (*) con cassandra-cql
So che dovrei usare una colonna contatore per fornire il numero di utenti nella mia applicazione, ma voglio sapere se questo è un bug o un mio errore.
def self.create_users
(0..19000).each do |f|
@@db.execute("INSERT INTO users (uid, first_name, last_name, email) VALUES (?,?,?,?)", f.to_s, "first_name", "last_name", "email")
end
end
def self.count_users
count = @@db.execute("SELECT count(*) FROM users")
count.fetch do |c|
return c[0]
end
end
grazie per quello! – user934801
Ciao, posso solo chiedere quale versione di cassandra stai usando? Sto affrontando un problema correlato con 'select count (*)' e 'limite' sembra essere completamente ignorato: http://stackoverflow.com/questions/36174805/cassandra-cql-select-count-with-limit – light
Questo la domanda era da gennaio 2012, quindi era molto probabile che Cassandra 1.0.X. CQL è stato revisionato da allora e ora ha una semantica completamente diversa. – psanford