mirror of
https://github.com/scylladb/scylladb.git
synced 2026-04-24 10:30:38 +00:00
Current sender sends stream_mutation_fragments_cmd::end_of_stream to receiver when an error is received from a peer node. To be safe, send stream_mutation_fragments_cmd::error instead of stream_mutation_fragments_cmd::end_of_stream to prevent end_of_stream to be written into the sstable when a partition is not closed yet. In addition, use mutation_fragment_stream_validator to valid the mutation fragments emitted from the reader, e.g., check if partition_start and partition_end are paired when the reader is done. If not, fail the stream session and send stream_mutation_fragments_cmd::error instead of stream_mutation_fragments_cmd::end_of_stream to isolate the problematic sstables on the sender node. Refs: #6478
16 KiB
16 KiB