Description
In the code introduced by CASSANDRA-8180, we build a lower bound for a partition (sometimes) based on the min clustering values of the stats file. We can't do that if the sstable has and range tombston marker and the code does check that this is the case, but unfortunately the check is done using the stats minLocalDeletionTime but that value isn't populated properly in pre-3.0. This means that if you upgrade from 2.1/2.2 to 3.4+, you may end up getting an exception like
WARN [ReadStage-2] 2017-03-20 13:29:39,165 AbstractLocalAwareExecutorService.java:167 - Uncaught exception on thread Thread[ReadStage-2,5,main]: {} java.lang.AssertionError: Lower bound [INCL_START_BOUND(Foo, -9223372036854775808, -9223372036854775808) ]is bigger than first returned value [Marker INCL_START_BOUND(Foo)@1490013810540999] for sstable /var/lib/cassandra/data/system/size_estimates-618f817b005f3678b8a453f3930b8e86/system-size_estimates-ka-1-Data.db at org.apache.cassandra.db.rows.UnfilteredRowIteratorWithLowerBound.computeNext(UnfilteredRowIteratorWithLowerBound.java:122)
and this until the sstable is upgraded.