Uploaded image for project: 'Cassandra'
  1. Cassandra
  2. CASSANDRA-10857

Allow dropping COMPACT STORAGE flag from tables in 3.X

Agile BoardAttach filesAttach ScreenshotBulk Copy AttachmentsBulk Move AttachmentsVotersWatch issueWatchersCreate sub-taskConvert to sub-taskMoveLinkCloneLabelsUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Clients

    Description

      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:

      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}
          ];
      

      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.

      Attachments

        Issue Links

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            ifesdjeen Alex Petrov Assign to me
            aleksey Aleksey Yeschenko
            Alex Petrov
            Sylvain Lebresne
            Votes:
            1 Vote for this issue
            Watchers:
            26 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment