[ https://issues.apache.org/jira/browse/CASSANDRA-14556?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16555229#comment-16555229 ]
ASF GitHub Bot commented on CASSANDRA-14556: -------------------------------------------- Github user dineshjoshi commented on a diff in the pull request: https://github.com/apache/cassandra/pull/239#discussion_r204998639 --- Diff: src/java/org/apache/cassandra/db/streaming/CassandraOutgoingFile.java --- @@ -62,7 +90,23 @@ public CassandraOutgoingFile(StreamOperation operation, Ref<SSTableReader> ref, sections, sstable.compression ? sstable.getCompressionMetadata() : null, keepSSTableLevel ? sstable.getSSTableLevel() : 0, - sstable.header.toComponent()); + sstable.header.toComponent(), manifest, shouldStreamFullSSTable(), + sstable.first, + sstable.metadata().id); + } + + @VisibleForTesting + public static ComponentManifest getComponentManifest(SSTableReader sstable) + { + LinkedHashMap<Component.Type, Long> components = new LinkedHashMap<>(STREAM_COMPONENTS.size()); + for (Component component : STREAM_COMPONENTS) --- End diff -- @iamaleksey would it be worth having a list of required components here? Any one of the missing components will be a fatal? For example, when I reset the level on the receiving side, I expect stats to exist and is sent over. > Optimize streaming path in Cassandra > ------------------------------------ > > Key: CASSANDRA-14556 > URL: https://issues.apache.org/jira/browse/CASSANDRA-14556 > Project: Cassandra > Issue Type: Improvement > Components: Streaming and Messaging > Reporter: Dinesh Joshi > Assignee: Dinesh Joshi > Priority: Major > Labels: Performance > Fix For: 4.x > > > During streaming, Cassandra reifies the sstables into objects. This creates > unnecessary garbage and slows down the whole streaming process as some > sstables can be transferred as a whole file rather than individual > partitions. The objective of the ticket is to detect when a whole sstable can > be transferred and skip the object reification. We can also use a zero-copy > path to avoid bringing data into user-space on both sending and receiving > side. -- This message was sent by Atlassian JIRA (v7.6.3#76005) --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org