This reverts the changes made to the native protocol V5 wire format in
CASSANDRA-13304 and subsequent follow up JIRAs (CASSANDRA-15556 &
CASSANDRA-14716). The framing format has been re-implemented based on the
internode messaging format developed in CASSANDRA-15066.
OPTIONS and STARTUP messages are unframed (i.e. identical to the V4 format).
After sending its response to a STARTUP message, the server modifies the
pipeline and all further messages are sent (and should be expected by the
client to be received) in the format determined by the protocol version of
the STARTUP message.
Patch by Sam Tunnicliffe; reviewed by Alex Petrov and Caleb Rackliffe
for CASSANDRA-15299
* initiate multiple buffer pool for different lifespan and usages
- Chunk Cache Buffer Pool - conf.file_cache_size_in_mb=512mb
- Networking Buffer Pool - conf.temporary_cache_size_in_mb=128mb
* Add overflowSize and usedSize to buffer pool metrics
* re-circulate buffer pool Chunk for ChunkCache whenever it has free space, even thoughput it may not be able to allocate due to fragmentation
patch by Zhao Yang; reviewed by Caleb Rackliffe and Aleksey Yeschenko for CASSANDRA-15229
This fixes backwards compatibility with the 3.11 server_encryption_options
while exposing the correct defaults after the 4.0 Netty refactor.
Patch by Joseph Lynch; Reviewed by Ekaterina Dimitrova for CASSANDRA-15262
Patch by Sam Tunnicliffe; reviewed by Benjamin Lerer for CASSANDRA-15812
Switches ValidationExecutor's work queue to LinkedBlockingQueue to
avoid blocking AntiEntropyStage when the executor is saturated. This
requires VE.corePoolSize to be set to concurrent_validations as now
it will always prefer to queue requests rather than start new threads.
This commit also adds a hard limit on concurrent_validations, as allowing
an unbounded number of validations to run concurrently is never safe.
This was always true, but setting a high value here is now more
dangerous as it controls the number of core, not max, threads.
This hard limit is linked to concurrent_compactors, so operators may
set concurrent_validations between 1 and concurrent_compactors.
The meaning of setting it < 1 has changed from "unbounded" to
"whatever concurrent_compactors is set to".
This safety valve can be overridden with a system property at startup
and/or a JMX property.
CASSANDRA-9292 removed the 1hr timeout on prepare messages, but this
was inadvertently undone when CASSANDRA-13397 was committed. As nothing
long running is done in the repair phase anymore, this timeout can
safely be reduced.
If using RepairCommandPoolFullStrategy.queue, the core pool size
for repairCommandExecutor must be increased from the default
value of 1 or else all concurrent tasks will be queued and no
more threads created.
* Update copyright date to 2020
* Add glossary
* Rearranged rackdc for better flow
* Add topologies properties file
* Add commitlog_archiving file
* Add logback.xml info
* jvm.options files
* Removed invalid reference to wiki from configuration file
Patch by Lorina Poland; Reviewed by Jon Haddad for CASSANDRA-15822
Previously Zstd, Deflate and LZ4HC could hold up the flush thread while
flushing due to their slow compression rates. With this patch we always
default to flush with a fast compressor (default to LZ4) and then
compress into the high compression strategy during normal compactions
that follow. Note that if the existing table compressor is fast (e.g.
LZ4 or Snappy) we use that.
Patch by Joey Lynch; reviewed by Dinesh Joshi for CASSANDRA-15379
After building artifacts, a diff is left over, so let's fix that:
diff --git a/conf/cassandra.yaml b/conf/cassandra.yaml
index 28d86fd10a..e776a5a620 100644
--- a/conf/cassandra.yaml
+++ b/conf/cassandra.yaml
@@ -1341,4 +1341,4 @@ enable_sasi_indexes: false
# Enables creation of transiently replicated keyspaces on this node.
# Transient replication is experimental and is not recommended for production use.
-enable_transient_replication: false
\ No newline at end of file
+enable_transient_replication: false
patch by Aleksey Yeschenko and Benedict Elliott Smith; reviewed by Alex
Petrov, Aleksey Yeschenko, and Benedict Elliott Smith for CASSANDRA-15066
Co-authored-by: Aleksey Yeschenko <aleksey@apache.org>
Co-authored-by: Benedict Elliott Smith <benedict@apache.org>