Details
-
Bug
-
Status: Resolved
-
Normal
-
Resolution: Fixed
-
None
-
Code - Bug - Unclear Impact
-
Low
-
Normal
-
User Report
-
All
-
None
-
Description
There is a bug in the current code (trunk on 6th April 2020) as if we are streaming entire SSTables via CassandraEntireSSTableStreamWriter and CassandraOutgoingFile respectively, there is not any update on particular components of a SSTable as it counts only "db" file to be there. That introduces this bug:
Mode: NORMAL Rebuild 2c0b43f0-735d-11ea-9346-fb0ffe238736 /127.0.0.2 Sending 19 files, 27664559 bytes total. Already sent 133 files, 27664559 bytes total /tmp/dtests15682026295742741219/node2/data/distributed_test_keyspace/cf-196b3... ....
Basically, number of files to be sent is lower than files sent.
The straightforward fix here is to distinguish when we are streaming entire sstables and in that case include all manifest files into computation.
This issue depends on CASSANDRA-15657 because the resolution whether we stream entirely or not is got from a method which is performance sensitive and computed every time. Once CASSANDRA-15657 (hence CASSANDRA-14586) is done, this ticket can be worked on.
branch with fix is here: https://github.com/smiklosovic/cassandra/tree/CASSANDRA-15694
Attachments
Issue Links
- blocks
-
CASSANDRA-15406 Show the progress of data streaming and index build
- Resolved
- is blocked by
-
CASSANDRA-15657 Improve zero-copy-streaming containment check by using file sections
- Resolved