You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@cassandra.apache.org by "Saha, Sushanta K" <su...@verizonwireless.com.INVALID> on 2020/01/13 12:30:51 UTC
Re: [E] Re: bug in cluster key push down
*primary key (partition, clustering1, clustering2)*
So, the partitioning key has three columns. You need to specify values for
all three columns. For clustering columns, you need another parenthesis
like *primary key (partition, (clustering1, clustering2))*
*.... Sushanta*
On Sun, Jan 12, 2020 at 10:52 AM Jeff Jirsa <jj...@gmail.com> wrote:
> Can you open a jira so someone can investigate ? It’s probably just a
> logging / visibility problem, but we should confirm
>
> Sent from my iPhone
>
> On Jan 12, 2020, at 6:04 AM, onmstester onmstester
> <on...@zoho.com.invalid> wrote:
>
>
> Using Apache Cassandra 3.11.2, defined a table like this:
>
>
> *create table my_table(*
> *partition text,*
> *clustering1 int,*
>
> *clustering2 text,*
>
> *data set<text>,*
> *primary key (partition, clustering1, clustering2))*
>
> and configured slow queries threshold to 1ms in yaml to see how queries
> passed to cassandra. Query below:
>
> *select * from my_table where partition='a' and clustering1= 1 and
> clustering2='b'*
>
> would be like this in debug.log of cassandra:
>
> *select * from my_table where partition='a' LIMIT 100> (it means that the
> two cluster key restriction did not push down to storage engine and the
> whole partition been retrieved)*
>
> but this query:
>
> *select * from my_table where partition='a' and clustering1= 1*
>
> *would be *
>
> *select * from my_table where partition='a' and clustering1= 1 LIMIT 100>
> (single cluster key been pushed down to storage engine)*
>
>
> *So it seems to me that, we could not restrict multiple clustering keys in
> select because it would retrieve the whole partition ?!*
>
> Sent using Zoho Mail
> <https://urldefense.proofpoint.com/v2/url?u=https-3A__www.zoho.com_mail_&d=DwMFaQ&c=udBTRvFvXC5Dhqg7UHpJlPps3mZ3LRxpb6__0PomBTQ&r=JaNakyvP8b5eGvWhmxll6L4SNrrqHGq3Ghe3-Mb4Nezhm-3SiJqFhK3ICb6tsog4&m=nLzRDuDtJfHu6ztWOA1rS6O5NNM608IOgZ5IQ-DCwXc&s=uiUd0dwu7gjeqOHJ3l_qTkBp8vsm9aeH4a4abkZFFKc&e=>
>
>
>
>
--
*Sushanta Saha|*MTS IV-Cslt-Sys Engrg|WebIaaS_DB Group|HQ -
* VerizonWireless O 770.797.1260 C 770.714.6555 Iaas Support Line
949-286-8810*
Re: [E] bug in cluster key push down
Posted by Hannu Kröger <hk...@gmail.com>.
No, I think it was originally correct.
If partition key has multiple parts, then you need parenthesis around parts of partition key.
Hannu
> On 13. Jan 2020, at 14.30, Saha, Sushanta K <su...@verizonwireless.com.INVALID> wrote:
>
>> primary key (partition, clustering1, clustering2)
>>
>> So, the partitioning key has three columns. You need to specify values for all three columns. For clustering columns, you need another parenthesis like primary key (partition, (clustering1, clustering2))
>>
>> .... Sushanta
>
> On Sun, Jan 12, 2020 at 10:52 AM Jeff Jirsa <jjirsa@gmail.com <ma...@gmail.com>> wrote:
> Can you open a jira so someone can investigate ? It’s probably just a logging / visibility problem, but we should confirm
>
> Sent from my iPhone
>
>> On Jan 12, 2020, at 6:04 AM, onmstester onmstester <on...@zoho.com.invalid> wrote:
>>
>>
>> Using Apache Cassandra 3.11.2, defined a table like this:
>>
>> create table my_table(
>> partition text,
>> clustering1 int,
>> clustering2 text,
>> data set<text>,
>> primary key (partition, clustering1, clustering2))
>>
>> and configured slow queries threshold to 1ms in yaml to see how queries passed to cassandra. Query below:
>>
>> select * from my_table where partition='a' and clustering1= 1 and clustering2='b'
>>
>> would be like this in debug.log of cassandra:
>>
>> select * from my_table where partition='a' LIMIT 100> (it means that the two cluster key restriction did not push down to storage engine and the whole partition been retrieved)
>>
>> but this query:
>>
>> select * from my_table where partition='a' and clustering1= 1
>>
>> would be
>>
>> select * from my_table where partition='a' and clustering1= 1 LIMIT 100> (single cluster key been pushed down to storage engine)
>>
>>
>> So it seems to me that, we could not restrict multiple clustering keys in select because it would retrieve the whole partition ?!
>> Sent using Zoho Mail <https://urldefense.proofpoint.com/v2/url?u=https-3A__www.zoho.com_mail_&d=DwMFaQ&c=udBTRvFvXC5Dhqg7UHpJlPps3mZ3LRxpb6__0PomBTQ&r=JaNakyvP8b5eGvWhmxll6L4SNrrqHGq3Ghe3-Mb4Nezhm-3SiJqFhK3ICb6tsog4&m=nLzRDuDtJfHu6ztWOA1rS6O5NNM608IOgZ5IQ-DCwXc&s=uiUd0dwu7gjeqOHJ3l_qTkBp8vsm9aeH4a4abkZFFKc&e=>
>>
>>
>>
>
>
> --
>
> Sushanta Saha|MTS IV-Cslt-Sys Engrg|WebIaaS_DB Group|HQ - VerizonWireless
> O 770.797.1260 C 770.714.6555 Iaas Support Line 949-286-8810
>