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

Secondary index metadata is not reloaded when table is altered

    XMLWordPrintableJSON

Details

    • Normal

    Description

      The javadocs for Index.getMetadataReloadTask() state the following:

      Returns a task to reload the internal metadata of an index.
      Called when the base table metadata is modified or when the configuration of the Index is updated.

      However, altering a table does not result in the reload task being executed. I think the root of the problem is that in SecondaryIndexManager.reloadIndex(), we only execute the reload task when the old IndexMetadata does not equal the current IndexMetadata. Altering the table does not change the index metadata, so this check always fails.

      This especially affects per-row secondary indexes, where the index may need to handle columns being added or dropped.

      Attachments

        Activity

          People

            samt Sam Tunnicliffe
            thobbs Tom Hobbs
            Sam Tunnicliffe
            Tom Hobbs
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: