Package org.apache.cassandra.streaming.async
package org.apache.cassandra.streaming.async
Non-blocking streaming with netty
This document describes the implementation details of the streaming protocol. A listener for a streaming session listens on the same socket as internode messaging, and participates in the same handshake protocol That protocol is described in the package-level documentation fororg.apache.cassandra.net.async, and
thus not here.
Streaming 2.0 was implemented as CASSANDRA-5286. Streaming 2.0 used (the equivalent of) a single thread and
a single socket to transfer sstables sequentially to a peer (either as part of a repair, bootstrap, and so on).
Part of the motivation for switching to netty and a non-blocking model as to enable stream transfers to occur
in parallel for a given session.
Thus, a more detailed approach is required for stream session management.
Session setup and management
The full details of the session lifecycle are documented inStreamSession.-
ClassesClassDescriptionA serialiazer for stream compressed files (see package-level documentation).Responsible for sending
StreamMessages to a given peer.