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

Fix AlterTableStatement dropped type validation order

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Normal
    • Resolution: Fixed
    • 4.0-alpha1, 4.0
    • Cluster/Schema
    • None
    • Correctness - Recoverable Corruption / Loss
    • Low
    • Low Hanging Fruit
    • Code Inspection
    • All
    • None
    • 4.0
    • Hide

      N/A

      Show
      N/A

    Description

      4.0 has a minor bug in AlterTableStatement, in which we compare value compatibility of dropped type with new type instead of the other way around (and order is significant here).
      This results in more conversions identified as valid than should be allowed to.

      The fix is a trivial one-liner.

      Relatedly, we should audit all implementations of isValueCompatible() out there - at least one, BytesType - is no longer valid in 3.0+, since BytesType can no longer correctly read any complex column. And perhaps go even further, and restrict column recreation to only previously dropped type precisely, for which I have a couple arguments as well.

      That said, I'd like to defer those to a different ticket.

      Attachments

        Activity

          People

            aleksey Aleksey Yeschenko
            aleksey Aleksey Yeschenko
            Aleksey Yeschenko
            Sam Tunnicliffe
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: