This is related to CASSANDRA-9420
For use cases where applications know an upper bound on TTL or know that all TTLs are the same value, if this is put into the schema then we can choose to skip cells past these TTL values rather than converting them to tombstones.
For this to work, we would need these fixed and immutable once set into the table, but would need to allow tables to add this after the fact (alter table).
For all new data, the TTLs would need to be checked to make sure that they respect the expected property (the ttl is required_ttl if defined, or <= max_ttl if defined). For existing data, we could ether validate the TTL matches the expected setting and drop the cell, or we could detect that it doesn’t match, and fall back to tombstone (see org.apache.cassandra.db.rows.AbstractCell#purge).