[ 
https://issues.apache.org/jira/browse/CASSANDRA-9281?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Sam Tunnicliffe updated CASSANDRA-9281:
---------------------------------------
    Description: 
The 2.0 patch for CASSANDRA-9196 introduces a bug which can cause index rebuild 
operations to fail, including those which run as part of streaming operations. 

The issue is that {{SI#indexes}} actually expects a full cell name, rather than 
the CQL column name (so it's functionally the same as the 2.1 version). Passing 
a {{ColumnDefinition.name}} to certain implementations causes them to error, 
{{CompositesIndexOnRegular}} and {{KeysIndex}}s on tables with 
{{DynamicCompositeType}} columns for example. 

The right thing is to do what the 2.1 version does and check the 
{{ColumnDefinition}} from the base table appears in {{SI#getColumnDefs}}. If we 
pull that check into {{SIM#filterByColumn}} then the 
{{SI#indexes(ColumnDefinition)}} overload from the original 2.1 patch is 
redundant.


  was:
The 2.0 patch for CASSANDRA-9196 introduces a bug which can cause index rebuild 
operations, including those which run as part of streaming operations. 

The issue is that {{SI#indexes}} actually expects a full cell name, rather than 
the CQL column name (so it's functionally the same as the 2.1 version). Passing 
a {{ColumnDefinition.name}} to certain implementations causes them to error, 
{{CompositesIndexOnRegular}} and {{KeysIndex}}s on tables with 
{{DynamicCompositeType}} columns for example. 

The right thing is to do what the 2.1 version does and check the 
{{ColumnDefinition}} from the base table appears in {{SI#getColumnDefs}}. If we 
pull that check into {{SIM#filterByColumn}} then the 
{{SI#indexes(ColumnDefinition)}} overload from the original 2.1 patch is 
redundant.



> Index selection during rebuild fails with certain table layouts.
> ----------------------------------------------------------------
>
>                 Key: CASSANDRA-9281
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-9281
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Sam Tunnicliffe
>            Assignee: Sam Tunnicliffe
>             Fix For: 2.0.15, 2.1.6
>
>         Attachments: 9281-2.0.txt, 9281-2.1.txt
>
>
> The 2.0 patch for CASSANDRA-9196 introduces a bug which can cause index 
> rebuild operations to fail, including those which run as part of streaming 
> operations. 
> The issue is that {{SI#indexes}} actually expects a full cell name, rather 
> than the CQL column name (so it's functionally the same as the 2.1 version). 
> Passing a {{ColumnDefinition.name}} to certain implementations causes them to 
> error, {{CompositesIndexOnRegular}} and {{KeysIndex}}s on tables with 
> {{DynamicCompositeType}} columns for example. 
> The right thing is to do what the 2.1 version does and check the 
> {{ColumnDefinition}} from the base table appears in {{SI#getColumnDefs}}. If 
> we pull that check into {{SIM#filterByColumn}} then the 
> {{SI#indexes(ColumnDefinition)}} overload from the original 2.1 patch is 
> redundant.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to