NPE bug in streaming checking if SSTable is being repaired

patch by David Capwell; reviewed by Marcus Eriksson for CASSANDRA-17801
This commit is contained in:
David Capwell 2022-08-08 10:37:30 -07:00
parent d0e566a953
commit c7d2e97da0
2 changed files with 6 additions and 1 deletions

View File

@ -1,4 +1,5 @@
4.2
* NPE bug in streaming checking if SSTable is being repaired (CASSANDRA-17801)
* Users of NativeLibrary should handle lack of JNA appropriately when running in client mode (CASSANDRA-17794)
* Warn on unknown directories found in system keyspace directory rather than kill node during startup checks (CASSANDRA-17777)
* Log duplicate rows sharing a partition key found in verify and scrub (CASSANDRA-17789)

View File

@ -30,6 +30,7 @@ import org.apache.cassandra.db.lifecycle.View;
import org.apache.cassandra.dht.Range;
import org.apache.cassandra.dht.Token;
import org.apache.cassandra.io.sstable.format.SSTableReader;
import org.apache.cassandra.io.sstable.metadata.StatsMetadata;
import org.apache.cassandra.locator.RangesAtEndpoint;
import org.apache.cassandra.locator.Replica;
import org.apache.cassandra.service.ActiveRepairService;
@ -105,7 +106,10 @@ public class CassandraStreamManager implements TableStreamManager
}
else
{
predicate = s -> s.isPendingRepair() && s.getSSTableMetadata().pendingRepair.equals(pendingRepair);
predicate = s -> {
StatsMetadata sstableMetadata = s.getSSTableMetadata();
return sstableMetadata.pendingRepair != ActiveRepairService.NO_PENDING_REPAIR && sstableMetadata.pendingRepair.equals(pendingRepair);
};
}
for (Range<PartitionPosition> keyRange : keyRanges)