cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Aleksey Yeschenko (JIRA)" <j...@apache.org>
Subject [jira] [Created] (CASSANDRA-10857) Allow dropping COMPACT STORAGE flag from tables in 3.X
Date Mon, 14 Dec 2015 17:13:46 GMT
Aleksey Yeschenko created CASSANDRA-10857:
---------------------------------------------

             Summary: Allow dropping COMPACT STORAGE flag from tables in 3.X
                 Key: CASSANDRA-10857
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-10857
             Project: Cassandra
          Issue Type: Improvement
          Components: CQL, Distributed Metadata
            Reporter: Aleksey Yeschenko
             Fix For: 3.x


Thrift allows users to define flexible mixed column families - where certain columns would
have explicitly pre-defined names, potentially non-default validation types, and be indexed.

Example:
{code}
create column family foo
    and default_validation_class = UTF8Type
    and column_metadata = [
        {column_name: bar, validation_class: Int32Type, index_type: KEYS},
        {column_name: baz, validation_class: UUIDType, index_type: KEYS}
    ];
{code}

Columns named {{bar}} and {{baz}} will be validated as {{Int32Type}} and {{UUIDType}}, respectively,
and be indexed. Columns with any other name will be validated by {{UTF8Type}} and will not
be indexed.

With CASSANDRA-8099, {{bar}} and {{baz}} would be mapped to static columns internally. However,
being {{WITH COMPACT STORAGE}}, the table will only expose {{bar}} and {{baz}} columns. Accessing
any dynamic columns (any column not named {{bar}} and {{baz}}) right now requires going through
Thrift.

This is blocking Thrift -> CQL migration for users who have mixed dynamic/static column
families. That said, it *shouldn't* be hard to allow users to drop the {{compact}} flag to
expose the table as it is internally now, and be able to access all columns.



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

Mime
View raw message