You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Jonathan Ellis (JIRA)" <ji...@apache.org> on 2011/08/10 00:13:28 UTC

[jira] [Commented] (CASSANDRA-2982) Refactor secondary index api

    [ https://issues.apache.org/jira/browse/CASSANDRA-2982?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13081968#comment-13081968 ] 

Jonathan Ellis commented on CASSANDRA-2982:
-------------------------------------------

I don't think full index pluggability is a goal here.  So I don't see the point of that.

> 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
>
>
> 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