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

Pavel Yaskevich updated CASSANDRA-2982:
---------------------------------------

    Attachment: CASSANDRA-2982-v3.patch

v3 with minor formatting/annotation fixes and refactorings. Rebased with latest 
trunk (0bbc22c00dfcce3d0945e61e94dd91d78ed51a26).

+1 with Jonathan on keeping IndexType as I don't see the point of removing it 
and think that keeping public indexManager is fine and convenient.

So if nobody has any objections I think this is ready to be committed. 

Great work, Jake!


> Refactor secondary index api
> ----------------------------
>
>                 Key: CASSANDRA-2982
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2982
>             Project: Cassandra
>          Issue Type: Sub-task
>          Components: Core
>            Reporter: T Jake Luciani
>            Assignee: T Jake Luciani
>             Fix For: 1.0
>
>         Attachments: 2982-v1.txt, 2982-v2.txt, CASSANDRA-2982-v3.patch
>
>
> Secondary indexes currently make some bad assumptions about the underlying 
> indexes.
> 1. That they are always stored in other column families.
> 2. That there is a unique index per column
> In the case of CASSANDRA-2915 neither of these are true.  The new api should 
> abstract the search concepts and allow any search api to plug in.
> Once the code is refactored and basically pluggable we can remove the 
> IndexType enum and use class names similar to how we handle partitioners and 
> comparators.
> Basic api is to add a SecondaryIndexManager that handles different index 
> types per CF and a SecondaryIndex base class that handles a particular type 
> implementation.
> This requires major changes to ColumnFamilyStore and Table.IndexBuilder

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to