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

DROP COMPACT STORAGE should invalidate prepared statements still using CompactTableMetadata

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Normal
    • Resolution: Fixed
    • 4.0-beta4, 4.0
    • Legacy/CQL
    • None
    • Correctness - Transient Incorrect Response
    • Normal
    • Normal
    • Unit Test
    • All
    • None
    • Hide

      a new test that verifies the contents of the prepared statement cache around the DROP COMPACT STORAGE logic

      Show
      a new test that verifies the contents of the prepared statement cache around the DROP COMPACT STORAGE logic

    Description

      When we drop compact storage from a table, existing prepared statements continue to refer to an instance of CompactTableMetadata, rather than being invalidated so they can be assigned a new TableMetadata instance. There are perhaps some brute force ways to fix this, like bouncing the node, but that obviously sub-optimal.

      One idea is to have TableMetadata#changeAffectsPreparedStatements() return true when we go from having to not having the DENSE flag. It should be pretty easy to validate a fix with a small addition to CompactTableTest.

      Attachments

        Issue Links

          Activity

            People

              maedhroz Caleb Rackliffe
              maedhroz Caleb Rackliffe
              Caleb Rackliffe
              Alex Petrov, Michael Semb Wever
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0h
                  0h
                  Logged:
                  Time Spent - 1h
                  1h