You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@cassandra.apache.org by Constantin Teodorescu <br...@gmail.com> on 2011/04/21 00:10:53 UTC
Cannot find row when using 3 indices for search, able to find it
using only 2
Cassandra 0.7.4 on 4 nodes Linux Ubuntu 10.10 i386 , 32 bit
root@bigcouch-106:/etc/cassandra# nodetool -h 172.16.1.106 ring
Address Status State Load Owns Token
172.16.1.104 Up Normal 1.8 GB 22.33%
4778396862879243066278530647513341098
172.16.1.8 Up Normal 1.48 GB 28.12%
52627163731801348483758292043565262417
172.16.1.106 Up Normal 1.21 GB 27.22%
98934176951395683802275136006692518904
172.16.1.110 Up Normal 1.12 GB 22.33%
136934291168078629024171054299313117062
I am using keyspace 'bnd' , columnfamily 'pet' described as
update column family pet with column_metadata = [
{column_name: P_cui, validation_class:UTF8Type, index_type:
KEYS},
{column_name: P_nume, validation_class:UTF8Type, index_type: KEYS},
{column_name: P_prenume, validation_class:UTF8Type, index_type: KEYS}
];
Trying to find a row using 2 indices (P_cui and P_prenume) works:
[default@bnd] get pet where P_cui='1670518330770' and
P_prenume='CONSTANTIN';
-------------------
RowKey: RO1492360605
=> (column=A1RO354000086663, value=313a463a323030332d30342d30313a32333730,
timestamp=1303181522507175)
=> (column=P_adresa, value=4c4954454e49, timestamp=1303181522507175)
=> (column=P_cui, value=1670518330770, timestamp=1303181522507175)
=> (column=P_nume, value=Manoliu, timestamp=1303181522507175)
=> (column=P_prenume, value=CONSTANTIN, timestamp=1303181522507175)
=> (column=P_tip, value=36, timestamp=1303253832349129)
1 Row Returned.
I am able to find it using the other 2 indices (P_prenume and P_nume) works
fine:
[default@bnd] get pet where P_prenume='CONSTANTIN' and P_nume='Manoliu';
-------------------
RowKey: RO1492360605
=> (column=A1RO354000086663, value=313a463a323030332d30342d30313a32333730,
timestamp=1303181522507175)
=> (column=P_adresa, value=4c4954454e49, timestamp=1303181522507175)
=> (column=P_cui, value=1670518330770, timestamp=1303181522507175)
=> (column=P_nume, value=Manoliu, timestamp=1303181522507175)
=> (column=P_prenume, value=CONSTANTIN, timestamp=1303181522507175)
=> (column=P_tip, value=36, timestamp=1303253832349129)
1 Row Returned.
--------------------------------------------------------------------------------------------------
Trying to find the same row using 3 indices not working:
[default@bnd] get pet where P_cui='1670518330770' and P_prenume='CONSTANTIN'
and P_nume='Manoliu';
0 Row Returned.
Any clues?
Teo
Re: Cannot find row when using 3 indices for search, able to find it
using only 2
Posted by Constantin Teodorescu <br...@gmail.com>.
Thank you, I'll wait for 0.7.5 distribution when it will be shipped to test
it again!
Up to now, I'm satisfied with cassandra, we are evaluating it for migrating
our PostgreSQL solution to a mixed [couchdb + bigcouch + cassandra]
architecture !
Best regards,
Teo
On Thu, Apr 21, 2011 at 1:15 AM, Jonathan Ellis <jb...@gmail.com> wrote:
> sounds like https://issues.apache.org/jira/browse/CASSANDRA-2347
Re: Cannot find row when using 3 indices for search, able to find it
using only 2
Posted by Jonathan Ellis <jb...@gmail.com>.
sounds like https://issues.apache.org/jira/browse/CASSANDRA-2347
On Wed, Apr 20, 2011 at 5:10 PM, Constantin Teodorescu
<br...@gmail.com> wrote:
> Cassandra 0.7.4 on 4 nodes Linux Ubuntu 10.10 i386 , 32 bit
> root@bigcouch-106:/etc/cassandra# nodetool -h 172.16.1.106 ring
> Address Status State Load Owns Token
>
> 172.16.1.104 Up Normal 1.8 GB 22.33%
> 4778396862879243066278530647513341098
> 172.16.1.8 Up Normal 1.48 GB 28.12%
> 52627163731801348483758292043565262417
> 172.16.1.106 Up Normal 1.21 GB 27.22%
> 98934176951395683802275136006692518904
> 172.16.1.110 Up Normal 1.12 GB 22.33%
> 136934291168078629024171054299313117062
> I am using keyspace 'bnd' , columnfamily 'pet' described as
> update column family pet with column_metadata = [
> {column_name: P_cui, validation_class:UTF8Type, index_type:
> KEYS},
> {column_name: P_nume, validation_class:UTF8Type, index_type: KEYS},
> {column_name: P_prenume, validation_class:UTF8Type, index_type: KEYS}
> ];
> Trying to find a row using 2 indices (P_cui and P_prenume) works:
> [default@bnd] get pet where P_cui='1670518330770' and
> P_prenume='CONSTANTIN';
> -------------------
> RowKey: RO1492360605
> => (column=A1RO354000086663, value=313a463a323030332d30342d30313a32333730,
> timestamp=1303181522507175)
> => (column=P_adresa, value=4c4954454e49, timestamp=1303181522507175)
> => (column=P_cui, value=1670518330770, timestamp=1303181522507175)
> => (column=P_nume, value=Manoliu, timestamp=1303181522507175)
> => (column=P_prenume, value=CONSTANTIN, timestamp=1303181522507175)
> => (column=P_tip, value=36, timestamp=1303253832349129)
> 1 Row Returned.
> I am able to find it using the other 2 indices (P_prenume and P_nume) works
> fine:
> [default@bnd] get pet where P_prenume='CONSTANTIN' and P_nume='Manoliu';
> -------------------
> RowKey: RO1492360605
> => (column=A1RO354000086663, value=313a463a323030332d30342d30313a32333730,
> timestamp=1303181522507175)
> => (column=P_adresa, value=4c4954454e49, timestamp=1303181522507175)
> => (column=P_cui, value=1670518330770, timestamp=1303181522507175)
> => (column=P_nume, value=Manoliu, timestamp=1303181522507175)
> => (column=P_prenume, value=CONSTANTIN, timestamp=1303181522507175)
> => (column=P_tip, value=36, timestamp=1303253832349129)
> 1 Row Returned.
> --------------------------------------------------------------------------------------------------
> Trying to find the same row using 3 indices not working:
> [default@bnd] get pet where P_cui='1670518330770' and P_prenume='CONSTANTIN'
> and P_nume='Manoliu';
> 0 Row Returned.
> Any clues?
> Teo
>
--
Jonathan Ellis
Project Chair, Apache Cassandra
co-founder of DataStax, the source for professional Cassandra support
http://www.datastax.com