Details

    • Sub-task
    • Status: Resolved
    • Normal
    • Resolution: Fixed
    • 1.0.0
    • Feature/2i Index
    • None

    Description

      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

      Attachments

        1. CASSANDRA-2982-v3.patch
          119 kB
          Pavel Yaskevich
        2. 2982-v2.txt
          124 kB
          T Jake Luciani
        3. 2982-v1.txt
          135 kB
          T Jake Luciani

        Issue Links

          Activity

            People

              tjake T Jake Luciani
              tjake T Jake Luciani
              T Jake Luciani
              Pavel Yaskevich
              Votes:
              1 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: