Commit Graph

1265 Commits

Author SHA1 Message Date
Andrés de la Peña b3842de5cf Add guardrail for data disk usage
patch by Andrés de la Peña; reviewed by Ekaterina Dimitrova and Stefan Miklosovic for CASSANDRA-17150

Co-authored-by: Andrés de la Peña <a.penya.garcia@gmail.com>
Co-authored-by: Zhao Yang <jasonstack.zhao@gmail.com>
Co-authored-by: Eduard Tudenhoefner <etudenhoefner@gmail.com>
2022-04-22 16:36:07 +01:00
David Capwell 7db3285e7b Migrate track_warnings to more standard naming conventions and use latest configuration types rather than long
patch by David Capwell; reviewed by Andres de la Peña, Caleb Rackliffe for CASSANDRA-17560
2022-04-21 14:32:25 -07:00
Josh McKenzie 72af1f75fc Add guardrail for GROUP BY queries
Patch by Josh McKenzie; reviewed by David Capwell and Andres de la Pena for CASSANDRA-17509
2022-04-13 11:04:08 -04:00
Savni Nagarkar 20175bf77e Remove guardrails global enable flag
patch by Savni Nagarkar; reviewed by Andrés de la Peña and Joshua McKenzie for CASSANDRA-17499
2022-04-12 11:28:55 +01:00
Josh McKenzie 910bbb9b5f Add guardrail to disallow creation of secondary indexes
Patch by Josh McKenzie; reviewed by Chris Lohfink for CASSANDRA-17498
2022-04-07 15:53:23 -04:00
Josh McKenzie 105d69fdc5 Add guardrail to disallow creation of uncompressed sstables
Patch by Josh McKenzie; reviewed by David Capwell for CASSANDRA-17504
2022-04-07 15:33:34 -04:00
Brad Schoening 9711cd33c4 remove support for deprecated version specific TLS in Python 3.6
patch by Brad Schoening; reviewed by Stefan Miklosovic and Brandon Williams for CASSANDRA-17365
2022-04-06 14:01:47 +02:00
Andrés de la Peña 8a3b9260a9 Add guardrail for the number of fields per UDT
patch by Andrés de la Peña; reviewed by Ekaterina Dimitrova for CASSANDRA-17385
2022-03-28 17:50:15 +01:00
Jacek Lewandowski 0040fea379 Implement sstable generation identifier as uuid
Patch by Jacek Lewandowski; reviewed by Andrés de la Peña, Benjamin Lerer and Dan Jatnieks for CASSANDRA-17048
2022-03-23 11:50:33 +00:00
Caleb Rackliffe 4ea3e4c505 Add native transport rate limiter options to example cassandra.yaml, and expose metric for dispatch rate
patch by Caleb Rackliffe; reviewed by Josh McKenzie for CASSANDRA-17423
2022-03-21 11:39:28 -05:00
Andrés de la Peña 143a5e8b06 Add diagnostic events for guardrails
patch by Andrés de la Peña; reviewed by Berenguer Blasi and Stefan Miklosovic for CASSANDRA-17197

Co-authored-by: Andrés de la Peña <a.penya.garcia@gmail.com>
Co-authored-by: Aleksandr Sorokoumov <aleksandr.sorokoumov@gmail.com>
2022-03-21 15:52:25 +00:00
Andrés de la Peña 935bcf1e87 Add guardrails for collection items and size
patch by Andrés de la Peña; reviewed by Berenguer Blasi for CASSANDRA-17153
2022-03-15 13:31:41 +00:00
Andrés de la Peña a41040ccdc Add guardrails for read/write consistency levels
patch by Andrés de la Peña; reviewed by Caleb Rackliffe for CASSANDRA-17188

Co-authored-by: Andrés de la Peña <a.penya.garcia@gmail.com>
Co-authored-by: Aleksandr Sorokoumov <aleksandr.sorokoumov@gmail.com>
2022-03-11 15:36:39 +00:00
Andrés de la Peña 3233c82311 Add guardrail for SELECT IN terms and their cartesian product
patch by Andrés de la Peña; reviewed by Ekaterina Dimitrova for CASSANDRA-17187

Co-authored-by: Aleksandr Sorokoumov <aleksandr.sorokoumov@gmail.com>
Co-authored-by: Andrés de la Peña <a.penya.garcia@gmail.com>
2022-03-08 11:08:29 +00:00
Stefan Miklosovic eac9d92562 make startup checks configurable
patch by Stefan Miklosovic; reviewed by Paulo Motta for CASSANDRA-17220
2022-02-28 00:36:53 +01:00
Yifan Cai b83da7d978 Correct size unit to mebibypes 2022-02-25 14:38:43 -08:00
tejavadali 7ea0a4aa41 Add guardrail for number of partition keys on IN queries
patch by Krishna Vadali; reviewed by Andrés de la Peña and Berenguer Blasi for CASSANDRA-17186
2022-02-23 12:47:27 +00:00
Yifan Cai 3a6f690731 Limit the maximum hints size per host
patch by Yifan Cai; reviewed by Dinesh Joshi, Francisco Guerrero for CASSANDRA-17142
2022-02-10 17:18:29 -08:00
Andrés de la Peña 8e1c8f9863 Flatten guardrails config
patch by Andrés de la Peña; reviewed by David Capwell for CASSANDRA-17353
2022-02-09 18:31:37 +00:00
Ekaterina Dimitrova 9f56bf4ca7 Remove old Duration class in favor of DurationSpec class
patch by Ekaterina Dimitrova; reviewed by Caleb Rackliffe, David Capwell, Michael Semb Wever and Benjamin Lerer for CASSANDRA-15234
2022-02-05 22:39:53 -05:00
Ekaterina Dimitrova c51a7c66fc Bulk change of units around the code to support the move to the new configuration framework
patch by Ekaterina Dimitrova; reviewed by Caleb Rackliffe, David Capwell, Michael Semb Wever and Benjamin Lerer for CASSANDRA-15234
2022-02-05 22:28:57 -05:00
Ekaterina Dimitrova 6d5203615f Transfer parameters to the newly introduced configuration framework (7)
patch by Ekaterina Dimitrova; reviewed by Caleb Rackliffe, David Capwell, Michael Semb Wever and Benjamin Lerer for CASSANDRA-15234
2022-02-05 22:28:48 -05:00
Ekaterina Dimitrova 23138252f2 Transfer parameters to the newly introduced configuration framework (6)
patch by Ekaterina Dimitrova; reviewed by Caleb Rackliffe, David Capwell, Michael Semb Wever and Benjamin Lerer for CASSANDRA-15234
2022-02-05 22:28:40 -05:00
Ekaterina Dimitrova 1315d0c96f Transfer parameters to the newly introduced configuration framework (5)
patch by Ekaterina Dimitrova; reviewed by Caleb Rackliffe, David Capwell, Michael Semb Wever and Benjamin Lerer for CASSANDRA-15234
2022-02-05 22:28:32 -05:00
Ekaterina Dimitrova ed48f3c017 Transfer parameters to the newly introduced configuration framework (4)
patch by Ekaterina Dimitrova; reviewed by Caleb Rackliffe, David Capwell, Michael Semb Wever and Benjamin Lerer for CASSANDRA-15234
2022-02-05 22:28:23 -05:00
Ekaterina Dimitrova 755fd9446b Transfer parameters to the newly introduced configuration framework (3)
patch by Ekaterina Dimitrova; reviewed by Caleb Rackliffe, David Capwell, Michael Semb Wever and Benjamin Lerer for CASSANDRA-15234
2022-02-05 22:28:14 -05:00
Ekaterina Dimitrova d85f7f7c2d Transfer parameters to the newly introduced configuration framework (2)
patch by Ekaterina Dimitrova; reviewed by Caleb Rackliffe, David Capwell, Michael Semb Wever and Benjamin Lerer for CASSANDRA-15234
2022-02-05 22:28:04 -05:00
Ekaterina Dimitrova b9e2ab75f8 Extend DurationSpec and DataStorageSpec for smallest unit and transfer denylist parameters to the new framework
patch by Ekaterina Dimitrova; reviewed by Caleb Rackliffe, David Capwell, Michael Semb Wever and Benjamin Lerer for CASSANDRA-15234
2022-02-05 22:27:47 -05:00
Ekaterina Dimitrova a3258d66bc Transfer parameters to the newly introduced configuration framework (1)
patch by Ekaterina Dimitrova; reviewed by Caleb Rackliffe, David Capwell, Michael Semb Wever and Benjamin Lerer for CASSANDRA-15234
2022-02-05 22:27:37 -05:00
Ekaterina Dimitrova 5bb4bab12f DataRate parameters transition to the new framework
Fix the DB descriptorRefTest which failed on the previous commit
patch by Ekaterina Dimitrova; reviewed by Caleb Rackliffe, David Capwell, Michael Semb Wever and Benjamin Lerer for CASSANDRA-15234
2022-02-05 22:27:27 -05:00
Stefan Miklosovic da47849b50 Remove Windows-specific classes and related code
patch by Stefan Miklosovic; reviewed by Joshua McKenzie, Bowen Song, Berenguer Blasi for CASSANDRA-16956
2022-02-05 15:41:33 +01:00
Caleb Rackliffe 28eea6e8cd Runtime-configurable YAML option to prohibit USE statements
patch by Caleb Rackliffe; reviewed by David Capwell for CASSANDRA-17318
2022-02-04 14:24:51 -06:00
Josh McKenzie 89c6addb50 Prewarm role and credentials caches to avoid timeouts at startup
Patch by Blake Eggleston; reviewed by Sam Tunnicliffe, Jason Brown, and Caleb Rackliffe for CASSANDRA-16958

Co-authored by: Blake Eggleston <bdeggleston@gmail.com>
Co-authored by: Josh McKenzie <jmckenzie@apache.org>
2022-01-13 15:45:19 -05:00
Andrés de la Peña 95522f85d5 Add guardrail for list operations that require read before write
patch by Andrés de la Peña; reviewed by Ekaterina Dimitrova for CASSANDRA-17154
2021-12-17 16:50:20 +00:00
Andrés de la Peña bae92ee139 Migrate thresholds for number of keyspaces and tables to guardrails
This adds a new guardrail for limiting the number of keyspaces. It also  marks the previous not-guardrail thresholds
for keyspaces and tables as deprecated in favour of the equivalent guardrails. GuardrailsOptions is modified to always
log updates on guardrails config. A small refactor decouples guardrails from their configuration interfaces.

patch by Andrés de la Peña; reviewed by Ekaterina Dimitrova for CASSANDRA-17195
2021-12-17 16:33:00 +00:00
Kowalczyk bf1446cd85 Add guardrail for query page size
patch by Bartlomiej; reviewed by Andrés de la Peña and Brandon Williams for CASSANDRA-17189
2021-12-16 17:20:58 +00:00
Joseph Lynch 97b47c3b5f Merge branch 'cassandra-4.0' into trunk 2021-12-09 10:31:39 -05:00
Joseph Lynch e73d05bf85 Merge branch 'cassandra-3.11' into cassandra-4.0 2021-12-09 10:29:08 -05:00
Joseph Lynch 1fce84f983 Merge branch 'cassandra-3.0' into cassandra-3.11 2021-12-09 10:26:00 -05:00
Venkata Harikrishna Nukala 1911a887e8 Fix slow keycache load which blocks startup for tables with many sstables.
Patch by Venkata Harikrishna Nukala; reviewed by Marcus Eriksson and Joseph Lynch for CASSANDRA-14898
2021-12-09 10:14:16 -05:00
Andrés de la Peña 7871a28542 Add guardrails framework prototype
patch by Andrés de la Peña; reviewed by David Capwell and Stefan Miklosovic for CASSANDRA-17147

Co-authored-by: Sylvain Lebresne <lebresne@gmail.com>
Co-authored-by: Andrés de la Peña <a.penya.garcia@gmail.com>
Co-authored-by: Aleksandr Sorokoumov <aleksandr.sorokoumov@gmail.com>
Co-authored-by: Zhao Yang <jasonstack.zhao@gmail.com>
Co-authored-by: Jakub Żytka <jakub.zytka@datastax.com>
2021-12-03 15:20:20 +00:00
Ekaterina Dimitrova 670bcff596 Merge branch 'cassandra-4.0' into trunk 2021-11-16 15:08:54 -05:00
Ekaterina Dimitrova 44ace88585 internode_send_buff_size_in_bytes and internode_recv_buff_size_in_bytes have new names. Backward compatibility with the old names added
patch by Ekaterina Dimitrova; reviewed by David Capwell for CASSANDRA-17141
2021-11-16 14:34:04 -05:00
Brandon Williams be9db0980b Rename cassandra-topology.properties to example
Patch by brandonwilliams; reviewed by bereng for CASSANDRA-16912
2021-11-16 10:10:15 -06:00
Ekaterina Dimitrova f61d817cb5 Merge branch 'cassandra-4.0' into trunk 2021-11-16 10:37:53 -05:00
Ekaterina Dimitrova b6f61e850c Remove unused configuration parameters from cassandra.yaml
patch by Ekaterina Dimitrova; reviewed by Berenguer Blasi for CASSANDRA-17132
2021-11-16 10:30:52 -05:00
Ekaterina Dimitrova 4f112af615 Merge branch 'cassandra-4.0' into trunk 2021-11-10 16:41:48 -05:00
Ekaterina Dimitrova 4bb6f411d8 Fix cassandra.yaml formatting of parameters
patch by Ekaterina Dimitrova; reviewed by Josh McKenzie for CASSANDRA-17131
2021-11-10 16:36:59 -05:00
Brandon Williams e0954fa1a8 Revert "Rename cassandra-topology.properties to cassandra-topology.properties.example"
This reverts commit 29aa088ab6.
2021-11-10 14:27:55 -06:00
Francisco Guerrero 77dde2a3c4 Introduce separate rate limiting settings for entire SSTable streaming
patch by Francisco Guerrero; reviewed by Dinesh Joshi, Marcus Eriksson, Yifan Cai for CASSANDRA-17065
2021-11-10 10:35:01 -08:00
Bereng 29aa088ab6 Rename cassandra-topology.properties to cassandra-topology.properties.example
Patch by bereng; reviewed by brandonwilliams for CASSANDRA-16912
2021-11-10 11:17:31 -06:00
Blake Eggleston eae7b9c3ad Actively update auth caches in the background
Patch by Blake Eggleston; reviewed by Sam Tunnicliffe, Jason Brown, and Caleb Rackliffe for CASSANDRA-16957

Co-authored-by: Blake Eggleston <bdeggleston@gmail.com>
Co-authored-by: Josh McKenzie <jmckenzie@apache.org>
2021-11-09 15:32:36 -05:00
dcapwell 5b4d369266
coordinator_read_size had wrong name in cassandra.yaml
patch by Ekaterina Dimitrova, reviewed by David Capwell for CASSANDRA-17118
2021-11-03 15:32:40 -07:00
Josh McKenzie ab920c3031 Add a Denylist to block reads and writes on specific partition keys
Patch by Josh McKenzie, reviewed by Aleksei Zotov and Sumanth Pasupuleti for CASSANDRA-12106

Co-authored by Josh McKenzie <jmckenzie@apache.org>
Co-authored by Sam Overton
2021-11-01 12:43:51 -04:00
kurt b2ccd0f3f5 ensure hint window is persistent across restarts of a node
patch by Kurt Greaves; reviewed by Brandon Williams, Mick Semb Wever and Stefan Miklosovic for CASSANDRA-14309
2021-10-22 17:23:06 +02:00
Sumanth Pasupuleti 5fdadb25f9 add default_keyspace_rf and minimum_keyspace_rf configuration options
Patch by Sumanth Pasupuleti; reviewed by Jaydeepkumar Chovatia, Alex Petrov, Stefan Miklosovic and Alexander Zotov for CASSANDRA-14557.
2021-10-13 10:15:24 +02:00
Bowen Song 917d74bd35 add credentials file support for CQLSH
patch by Bowen Song; reviewed by Brian Houser, Stefan Miklosovic and Brandon Williams for CASSANDRA-16983
2021-10-11 18:33:16 +02:00
Josh McKenzie 5ab15316e1 Allow reverse iteration order during resource permissions checking
Patch by Sam Tunnicliffe; reviewed by Blake Eggleston, Jeff Jirsa, and Aleksei Zotov for CASSANDRA-17016

Co-authored by Sam Tunnicliffe <sam@beobal.com>
Co-authored by Josh McKenzie <jmckenzie@apache.org>
2021-10-08 08:49:42 -04:00
Bereng 6e35f30f66 Merge branch 'cassandra-4.0' into trunk 2021-09-30 07:48:44 +02:00
Bereng 42905e94b5 Merge branch 'cassandra-3.11' into cassandra-4.0 2021-09-30 07:47:16 +02:00
Bereng 7c067b6d7d Add indication in cassandra.yaml that rpc timeouts going too high will cause memory build up
patch by Berenguer Blasi, Jeremy Hanna; reviewed by Andres de la Peña for CASSANDRA-8969

Co-authored-by: Berenguer Blasi <berenguerblasi@gmail.com>
Co-authored-by: Jeremy Hanna <jeromatron@gmail.com>
2021-09-30 07:38:40 +02:00
David Capwell c7526f943f Add soft/hard limits to local reads to protect against reading too much data in a single query
patch by David Capwell; reviewed by Caleb Rackliffe and Marcus Eriksson for CASSANDRA-16896
2021-09-28 12:49:12 -05:00
Josh McKenzie 9f15ec6de1 Evaluate consistency levels of auth reads
Patch by Jason Brown; reviewed by Matthew Byrd, Sankalp Kohli, and Benjamin Lerer for CASSANDRA-12988

Co-authored by Jason Brown (jasedbrown@gmail.com)
Co-authored by Josh McKenzie (jmckenzie@apache.org)
2021-09-24 11:15:59 -04:00
Brandon Williams 08444cbc3f Reduce max native frame size to 16MB
Patch by brandonwilliams; reviewed by blerer for CASSANDRA-16886
2021-09-09 14:20:19 -05:00
David Capwell 4ec4ab992f Add client warnings and abort to tombstone and coordinator reads which go past a low/high watermark
patch by David Capwell; reviewed by Blake Eggleston, Marcus Eriksson for CASSANDRA-16850
2021-08-26 13:41:31 -07:00
David Capwell 4b3f07fc74 allow blocking IPs from updating metrics about traffic
patch by David Capwell; reviewed by Benjamin Lerer, Caleb Rackliffe, Jon Meredith for CASSANDRA-16859
2021-08-20 17:24:16 -07:00
Yifan Cai 8acbbe042b Background schedule to clean up orphaned hints files
patch by Yifan Cai; reviewed by Brandon Williams, Chris Lohfink for CASSANDRA-16815
2021-08-10 21:48:16 -07:00
Marcus Eriksson 296f65e8d1 Log when compacting many tombstones
Patch by marcuse; reviewed by Brandon Williams for CASSANDRA-16780
2021-07-02 09:36:06 +02:00
Brandon Williams 4c4e84fe78 Merge branch 'cassandra-4.0' into trunk 2021-06-29 16:00:11 -05:00
Brandon Williams 96884ee705 Merge branch 'cassandra-3.11' into cassandra-4.0 2021-06-29 15:59:50 -05:00
Brandon Williams c3ae22d654 Merge branch 'cassandra-3.0' into cassandra-3.11 2021-06-29 15:58:38 -05:00
Brandon Williams 2d8b304e75 Ninja fix comments saying mx4j defaults to 0.0.0.0
CASSANDRA-13574
2021-06-29 15:57:55 -05:00
Benjamin Lerer c9130d454c Merge branch cassandra-4.0 into trunk 2021-06-18 15:17:52 +02:00
Benjamin Lerer bdb7c3b377 Merge branch cassandra-3.11 into cassandra-4.0.0 2021-06-18 15:11:27 +02:00
Benjamin Lerer 91c12bd750 Merge branch cassandra-3.0 into cassandra-3.11 2021-06-18 14:53:54 +02:00
Benjamin Lerer 9b6dd382bd Add flag to disable ALTER...DROP COMPACT STORAGE statements
patch by Benjamin Lerer; review by Andres de la Pena and Brandon Williams for CASSANDRA-16733
2021-06-18 14:42:48 +02:00
fibersel 33ff36cc42 Add a system property to set hostId if not yet initialized
patch by Abi Palagashvili; reviewed by Stefan Miklosovic and Paulo Motta for CASSANDRA-14582
2021-06-07 21:01:44 +02:00
Ekaterina Dimitrova 658f3e11a6 Improve AuditLogging documentation and logback.xml
authored by Ekaterina Dimitrova, reviewed by Sarma Pydipally, Brandon Williams for CASSANDRA-16682
2021-05-21 14:42:53 -04:00
Mick Semb Wever 7337fc0ab4
Merge branch 'cassandra-3.11' into trunk 2021-04-19 17:39:10 +02:00
Mick Semb Wever 2ec96ae669
Merge branch 'cassandra-3.0' into cassandra-3.11 2021-04-19 17:34:05 +02:00
Sam Tunnicliffe dd6c261119 Add io.netty.tryReflectionSetAccessible=true to j11 server options in order to enable netty to use Unsafe direct byte buffer construction
Patch by Sam Tunnicliffe; reviewed by Brandon Williams, Ekaterina Dimitrova and Berenguer Blasi for CASSANDRA-16493
2021-03-19 17:36:13 -04:00
Jeff Widman 3d539d908f Update python2 doc references to point to py3
Patch by Jeff Widman; reviewed by brandonwilliams for CASSANDRA-16505
2021-03-09 17:15:07 -06:00
Yifan Cai 425f750a6f Document the side-effect of Zero Copy Streaming when using multiple data directories 2021-02-26 09:42:54 -08:00
Benjamin Lerer f69b11eee9 Improve system tables handling in case of disk failures
patch by Benjamin Lerer; reviewed by Andrés de la Peña and  Marcus
Eriksson for CASSANDRA-14793
2021-02-04 15:04:22 +01:00
Adam Holmberg 023eecb03a
Fix check for -Xlog in cassandra-env.sh
patch by Yakir Gibraltar; reviewed by Adam Holmberg, Mick Semb Wever for CASSANDRA-16279
2021-01-08 22:06:23 +01:00
Jeremy Hanna 3cfc8502b8
Updated default num_tokens from 256 to 16 with associated allocate_tokens_for_local_replication_factor set to 3
patch by Jeremy Hanna; reviewed by Alexander Dejanovski, Paulo Motta, Brandon Williams, Michael Semb Wever for CASSANDRA-13701
2020-12-17 22:18:17 +01:00
Benjamin Lerer 0d56f70ae7 Remove use of String.intern()
patch by Benjamin Lerer; reviewed by Brandon Williams for CASSANDRA-15810
2020-12-17 17:48:59 +01:00
Marcus Eriksson 786cb11e18 Send back client warning if creating too many tables/keyspaces
Patch by marcuse; reviewed by Alex Petrov, Brandon Williams, Yifan Cai for CASSANDRA-16309
2020-12-15 10:32:43 +01:00
yifan-c c6ea8fabf9 Add dedicated tcp user timeout for streaming connection
patch by Yifan Cai; reviewed by Berenguer Blasi, David Capwell, Adam
Holmberg and by Benjamin Lerer for CASSANDRA-16143
2020-12-09 13:33:33 +01:00
Yuki Morishita d9e2ed00af Remove windows scripts and their references
patch by Yuki Morishita; reviewed by Berenguer Blasi and Andrés de la Peña for CASSANDRA-16171
2020-12-02 16:43:45 +00:00
Sam Tunnicliffe a7c4ba9eee Improve checksumming and compression in protocol V5
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
2020-12-01 18:49:06 +00:00
Jordan West fae1f88354 Set dynamic snitch default badness threshold to 1.0
Patch by Jordan West; Reviewed by David Capwell for CASSANDRA-16285
2020-11-18 16:04:30 -08:00
Jeff Jirsa 85f69cf394 Add a ratelimiter to snapshot creation and deletion
Patch by Jeff Jirsa; Reviewed by Aleksey Yeschenko, Chris Lohfink,
maxwellguo for CASSANDRA-13019
2020-11-09 15:03:10 +01:00
Zhao Yang 699a1f74fc CASSANDRA-15229: Segregate Network and Chunk Cache BufferPools and Recirculate Partially Freed Chunks
* 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
2020-10-15 22:55:06 +08:00
David Capwell 79e693e16e Add flag to disable chunk cache and disable by default
patch by David Capwell; reviewed by Jon Meredith, Zhao Yang for CASSANDRA-16036
2020-09-29 17:07:07 -07:00
Caleb Rackliffe 292650d968 Merge branch 'cassandra-3.11' into trunk 2020-07-30 14:10:48 +01:00
Caleb Rackliffe 2ef1f1c150 Merge branch 'cassandra-3.0' into cassandra-3.11 2020-07-30 13:27:53 +01:00
Caleb Rackliffe e5c3d08a14 Operational improvements and hardening for replica filtering protection
patch by Caleb Rackliffe; reviewed by Andrés de la Peña for CASSANDRA-15907
2020-07-30 12:53:52 +01:00
Benedict Elliott Smith d8993934e9 Remove BackPressureStrategy
patch by Benedict; reviewed by Sergio Bossa and Robert Stupp for CASSANDRA-15375
2020-07-17 13:39:16 +01:00
Jeremy Hanna 688bb664c5 USING_G1 is incorrectly set in cassandra-env.sh if G1 is explicitly disabled with -UseG1GC
Patch by Jeremy Hanna, reviewed by David Capwell and brandonwilliams for
CASSANDRA-15931
2020-07-08 11:21:56 -05:00
Jeremy Hanna 8599f93d9a
Update compaction_throughput_mb_per_sec default from 16 to 64
patch by Jeremy Hanna; reviewed by Mick Semb Wever for CASSANDRA-14902
2020-07-08 12:10:32 +02:00
Bereng 4654ef09c1
FBUtilities.getJustLocalAddress falls back to lo ip on misconfigured nodes
patch by Berenguer Blasi; reviewed by Robert Stupp, Mick Semb Wever for CASSANDRA-15901
2020-07-07 10:12:12 +02:00
Jeremy Hanna 3cfe3c9f0d
Fail fast when -Xmn is set when the G1 garbage collector is enabled
patch by Jeremy Hanna; reviewed by Anthony Grasso for CASSANDRA-15839
2020-06-24 12:53:53 +02:00
Joseph Lynch 674b6cc1a5 Update defaults for server and client TLS settings
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
2020-06-20 18:59:41 -07:00
Sam Tunnicliffe 04533e6cda Avoid blocking AntiEntropyStage when submitting validation requests
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.
2020-06-09 13:41:05 +01:00
polandll 57a63f8551 Improving Cassandra configuration docs
* 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
2020-06-03 11:24:38 -07:00
Stefan Miklosovic dd1c811f87 Provide ability to configure IAuditLogger
Patch by Stefan Miklosovic; reviewed by Vinay Chella and marcuse for CASSANDRA-15748
2020-05-20 16:49:33 +02:00
Joseph Lynch 9c1bbf3ac9 Flush with fast compressors by default
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
2020-04-23 23:23:18 -07:00
Ekaterina Dimitrova 9d2ffad6b6 Set cross_node_timeout to true by default.
Patch by Ekaterina Dimitrova, reviewed by brandonwilliams for
CASSANDRA-15216
2020-01-15 16:35:44 -06:00
Mick Semb Wever 2da9af002a
Merge branch 'cassandra-3.11' into trunk 2020-01-02 11:28:56 +01:00
Mick Semb Wever 1381c875e8
Merge branch 'cassandra-3.0' into cassandra-3.11 2020-01-02 11:27:33 +01:00
Mick Semb Wever 3edbb09e02
Configure the GC logs directory to be the same as other C* log directories, as defined by $CASSANDRA_LOG_DIR
patch by Angelo Polo; reviewed by Mick Semb Wever for CASSANDRA-14306
2020-01-02 11:23:09 +01:00
Per Otterström d5e5c459f5 Align record header of FQL and audit binary log
Patch by Per Otterström; reviewed by Vinay Chella and marcuse for CASSANDRA-15076
2019-11-28 09:43:07 +01:00
Mick Semb Wever 068d2d37c6
Add `allocate_tokens_for_local_rf` yaml option for token allocation that doesn't require keyspace knowledge/existence
patch by Mick Semb Wever; reviewed by Branimir Lambov for CASSANDRA-15260
2019-09-08 20:28:40 +02:00
Michael Shuler d4054e0cf8 ninja: Fix "No newline at end of file" in c*.yaml
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
2019-09-04 10:31:22 -07:00
Alex Petrov 0240a4659d Introduce optional timeouts for idle client sessions
Patch by Alex Petrov, reviewed by Aleksey Yeshchenko for CASSANDRA-11097
2019-07-10 23:02:17 +02:00
Benedict Elliott Smith 310a48efcf Rewrite the internode messaging subsystem
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>
2019-06-12 16:26:54 +01:00
Mick Semb Wever 797ec05a6a
Merge branch 'cassandra-3.11' into trunk 2019-05-27 11:31:50 +10:00
Mick Semb Wever 60bdfb1731
Fix cassandra-env.sh to use $CASSANDRA_CONF to find cassandra-jaas.config
Patch by Angelo Polo; Reviewed by Mick Semb Wever for CASSANDRA-14305
2019-05-27 11:24:23 +10:00
Blake Eggleston aa762c6d52 Support building Cassandra with JDK 11
Patch by Blake Eggleston; Reviewed by Dinesh Joshi and Sam Tunnicliffe for CASSANDRA-15108
2019-05-10 13:46:27 -07:00
Mick Semb Wever 439c8278f0
Merge branch 'cassandra-3.11' into trunk 2019-04-01 20:51:06 +11:00
Mick Semb Wever 8ac2e4244d
Merge branch 'cassandra-3.0' into cassandra-3.11 2019-04-01 20:47:14 +11:00
Mick Semb Wever 47910df834
Merge branch 'cassandra-2.2' into cassandra-3.0 2019-04-01 20:46:17 +11:00
Mick Semb Wever 6fc3df93b8
Update comment link to mx4j in cassandra-env.sh
patch by Jearvon Dharrie; reviewed by Mick Semb Wever for CASSANDRA-14950
2019-04-01 20:40:19 +11:00
Andrés de la Peña 094689acf1 Merge branch 'cassandra-3.11' into trunk
# Conflicts:
#	CHANGES.txt
#	conf/cassandra.yaml
#	src/java/org/apache/cassandra/config/Config.java
#	src/java/org/apache/cassandra/config/DatabaseDescriptor.java
#	src/java/org/apache/cassandra/cql3/statements/CreateIndexStatement.java
#	src/java/org/apache/cassandra/cql3/statements/CreateViewStatement.java
#	src/java/org/apache/cassandra/db/view/View.java
#	test/unit/org/apache/cassandra/cql3/ViewTest.java
#	test/unit/org/apache/cassandra/index/sasi/SASICQLTest.java
2019-02-19 15:08:10 +00:00
Andrés de la Peña e6a61be8c8 Add flag to disable SASI indexes, and warning on creation
patch by Andres de la Peña; reviewed by Robert Stupp for CASSANDRA-14866
2019-02-19 14:20:06 +00:00
Blake Eggleston 70e6f2952f Merge branch 'cassandra-3.11' into trunk 2019-02-14 13:25:09 -08:00
Blake Eggleston 126853068d Merge branch 'cassandra-3.0' into cassandra-3.11 2019-02-14 13:21:38 -08:00
Joseph Lynch b30c8c98a5 Improve merkle tree size and time on heap
Patch by Joseph Lynch; Reviewed by Blake Eggleston for CASSANDRA-14096
2019-02-14 13:19:30 -08:00
Benedict Elliott Smith 49f72af792 Merge branch 'cassandra-3.11' into trunk 2018-12-06 15:52:38 +00:00
Benedict Elliott Smith d5021659cc Merge branch 'cassandra-3.0' into cassandra-3.11 2018-12-06 15:52:04 +00:00
sumanthpasupuleti b82a42fd9a Disable immediate flusher by default for cassandra-3.0 and cassandra-3.11
patch by Michael Burman and Sumanth Pasupuleti; reviewed by Benedict for CASSANDRA-14855
2018-12-06 15:49:55 +00:00
Michael Burman fff6eec290 Backport ImmediateFlusher to cassandra-3.0 and cassandra-3.11
patch by Michael Burman and Sumanth Pasupuleti; reviewed by Benedict for CASSANDRA-14855
2018-12-06 15:48:50 +00:00
Vinay Chella f46762eeca Audit log allows system keyspaces to be audited via configuration options
Patch by Vinay Chella; reviewed by Per Otterström and marcuse for CASSANDRA-14498
2018-11-19 12:34:34 +01:00
Joseph Lynch bfbc5274f2 Partitioned outbound internode TCP connections can occur when nodes restart
Patch by Joseph Lynch; Reviewed by Ariel Weisberg for CASSANDRA-14358
2018-11-01 17:35:23 -04:00
Jeff Jirsa 0766f7e541 Improve wording around partitioner selection
Patch by Aaron Ploetz; Reviewed by Dinesh Joshi, Kurt Greaves for CASSANDRA-14798
2018-10-31 14:54:08 -07:00
pksivar 6e00ab956e Allow using custom script for chronicle queue BinLog archival
Patch by Pramod K Sivaraju and marcuse; reviewed by Ariel Weisberg
and Sam Tunnicliffe for CASSANDRA-14373
2018-10-11 13:06:34 +02:00
Sam Tunnicliffe 5fbb938ada Detect inconsistencies in repaired data on the read path
Patch by Sam Tunnicliffe; reviewed by Marcus Eriksson and Jordan West for CASSANDRA-14145
2018-09-05 19:07:12 +01:00
Sam Tunnicliffe 65fb17a88b Add checksumming to the native protocol
Patch my Michael Kjellman and Sam Tunnicliffe; reviewed by Dinesh Joshi
and Jordan West for CASSANDRA-13304
2018-09-01 22:41:37 +01:00
Ariel Weisberg f7431b4328 Transient Replication and Cheap Quorums
Patch by Blake Eggleston, Benedict Elliott Smith, Marcus Eriksson, Alex Petrov, Ariel Weisberg; Reviewed by Blake Eggleston, Marcus Eriksson, Benedict Elliott Smith, Alex Petrov, Ariel Weisberg for CASSANDRA-14404

Co-authored-by: Blake Eggleston <bdeggleston@gmail.com>
Co-authored-by: Benedict Elliott Smith <benedict@apache.org>
Co-authored-by: Marcus Eriksson <marcuse@apache.org>
Co-authored-by: Alex Petrov <oleksandr.petrov@gmail.com>
2018-08-31 21:34:22 -04:00
Dinesh A. Joshi 7b61b0be88 Disable old native protocol versions on demand
patch by Dinesh Joshi; reviewed by jasobrown for CASSANDRA-14659
2018-08-30 14:12:38 -07:00
Michael Burman 96ef514917 Remove Netty timed batching and instead do the batch during next
eventLoop invocation after a write has been enqueued. Old behavior can
be enabled with setting native_transport_flush_in_batches_legacy

patch by Michael Burman; reviewed by Benedict for CASSANDRA-13651
2018-08-24 16:07:39 +01:00
Stefan Podkowinski 2846b22a70 Add diagnostic events base classes
patch by Stefan Podkowinski; reviewed by Mick Semb Wever for CASSANDRA-13457
2018-08-17 14:06:57 +02:00
Jason Brown ed806594e5 Revert 4.0 GC alg back to CMS
patch by jasobrown; reviewed by Jordan West for CASSANDRA-14636
2018-08-10 10:44:05 -07:00
Dinesh A. Joshi 47a12c52a3 Stream entire SSTables when possible
patch by Dinesh Joshi; reviewed by Aleksey Yeschenko and Ariel Weisberg
for CASSANDRA-14566
2018-07-27 17:50:25 +01:00
Robert Stupp 6ba2fb9395 Make C* compile and run on Java 11 and Java 8
patch by Robert Stupp; reviewed by Jason Brown for CASSANDRA-9608
2018-07-26 18:20:00 +02:00
Jason Brown 176d4bac22 Make PeriodicCommitLogService.blockWhenSyncLagsNanos configurable
patch by jasobrown; reviewed by Jordan West for CASSANDRA-14580
2018-07-22 03:20:46 -07:00
Marcus Eriksson 5d87677650 Add option to sanity check tombstones on reads/compaction
Patch by marcuse; reviewed by Ariel Weisberg for CASSANDRA-14467
2018-06-05 12:47:20 -07:00
Jason Brown 4f1094e668 Merge branch 'cassandra-3.11' into trunk 2018-05-12 05:33:02 -07:00
Jason Brown 443088fd13 Merge branch 'cassandra-3.0' into cassandra-3.11 2018-05-12 05:31:34 -07:00