Commit Graph

61 Commits

Author SHA1 Message Date
Stefan Miklosovic 3fad760416
Merge branch 'cassandra-6.0' into trunk 2026-07-25 09:56:30 +02:00
Arvind Kandpal f51c29c196
Add compound primary key example to nodetool getendpoints help
patch by Arvind Kandpal; reviewed by Dmitry Konstantinov, Stefan Miklosovic for CASSANDRA-15904
2026-07-25 09:53:44 +02:00
Stefan Miklosovic ca42cfe68d
Add nodetool getreplicas
nodetool getendpoints is deprecated. Also, all StorageServiceMBean.getNaturalEndpoints* methods are
deprecated and they call their replica counterparts. The deprecated methods are also not used directly anywhere
in the code (nor tests).

patch by Stefan Miklosovic; reviewed by Brandon Williams for CASSANDRA-17665
2026-07-23 21:51:51 +02:00
Maxim Muzafarov d60927cb14
Merge branch 'cassandra-6.0' into trunk
* cassandra-6.0:
  Forbid ambiguous option/parameter keys in nodetool command hierarchy
2026-07-11 21:39:38 +02:00
Maxim Muzafarov 7874fdae57
Forbid ambiguous option/parameter keys in nodetool command hierarchy
patch by Maxim Muzafarov; reviewed by Dmitry Konstantinov for CASSANDRA-21509
2026-07-11 21:31:41 +02:00
Stefan Miklosovic 2b3258fe86
Merge branch 'cassandra-6.0' into trunk 2026-06-30 10:33:03 +02:00
Arvind Kandpal 26d6b4f665
Offline nodetool commands should not print network options in help
- Introduced LocalCommand marker interface to identify commands that execute purely locally without a JMX connection.
- Updated History command to implement LocalCommand.
- Updated CassandraCliHelpLayout to check for LocalCommand instead of calling execution-flow methods, safely suppressing JMX options for offline commands.

patch by Arvind Kandpal; reviewed by Stefan Miklosovic, Maxim Muzafarov for CASSANDRA-20876
2026-06-30 10:23:39 +02:00
Sam Tunnicliffe 206485e820 Merge branch 'cassandra-6.0' into trunk 2026-05-15 14:49:01 +01:00
nvharikrishna c9d60a61e3 Offline tool for working with cluster metadata dump files
The following subcommands have been added:

* abortbootstrap        Cancel and undo an inflight bootstrap
* abortmove             Cancel and undo an inflight token move
* abortdecommission     Cancel and undo an inflight decommission
* assassinate           Remove a node from cluster metadata
* resetcms              Redefine the CMS membership
* move                  Modify a node's (single) owned token
* describe              Output a summary of the cluster metadata
* forcejoin             Force a registered or joining node into a JOINED state
* print                 Output a full rendering of cluster metadata
* printdirectory        Output a full rendering of the directory
* printdataplacements   Output the full data placements

Patch by Venkata Harikrishna Nukala; reviewed by Alex Petrov and Sam Tunnicliffe
for CASSANDRA-19151
2026-05-15 14:41:06 +01:00
Scott Carey cbbd401244
Allow nodetool garbagecollect to take a user defined list of SSTables
patch by Scott Carey; reviewed by Stefan Miklosovic, Brandon Williams for CASSANDRA-16767
2026-04-30 13:53:45 +02:00
Sam Tunnicliffe 4454ab8699 Improve writePlacementsAllSettled performance in large clusters with many ongoing range movements
Only inflight MSOs which affect the local node need to be
applied to determine the settled local ranges

Patch by Sam Tunnicliffe; reviewed by Marcus Eriksson for
CASSANDRA-21144
2026-03-17 11:11:22 +00:00
Maxim Muzafarov c9fe399b06
Move -pp/--print-port from NodetoolCommand to per-command Mixin
Patch by Maxim Muzafarov; reviewed by Stefan Miklosovic for CASSANDRA-20790
2026-03-02 21:16:03 +01:00
Stefan Miklosovic 3fc830a19c
Be able to detect and remove orphaned compression dictionaries
patch by Stefan Miklosovic; reviewed by Yifan Cai for CASSANDRA-21157
2026-02-17 11:07:49 +11:00
Josh McKenzie 940739a488 Add JDK21 support
Patch by Josh McKenzie; reviewed by Mick Semb Wever and Ekaterina Dimitrova for CASSANDRA-18831

Co-authored-by: Aleksey Yeschenko
Co-authored-by: Achilles Benetopoulos
Co-authored-by: Mick Semb Wever
2026-02-02 12:39:05 -05:00
Yaman Ziadeh 7c3c3a1d86 Initial async-profiler Nodetool implementation
patch by Yaman Ziadeh, Bernardo Botella, Stefan Miklosovic; reviewed by Dmitry Konstantinov, Jyothsna Konisa for CASSANDRA-20854
2026-01-12 15:02:13 -08:00
Stefan Miklosovic 98ec8970e1
Move training parameters for Zstd dictionary compression to CQL
It is also possible to override them via nodetool if necessary.

This patch also fixes the computation of sampling ratio to not lose the precision.

patch by Stefan Miklosovic; reviewed by Jyothsna Konisha, Yifan Cai for CASSANDRA-21078
2026-01-07 16:21:47 +01:00
Sunil Ramchandra Pawar a84abe7ba1 Extend nodetool verify to (optionally) validate SAI files
patch by Sunil Ramchandra Pawar; reviewed by Caleb Rackliffe and David Capwell for CASSANDRA-20949
2025-12-12 13:22:06 -06:00
Benedict Elliott Smith 4defbb9b1c Make TopologyException a checked exception to ensure they are handled carefully, as they may occur at surprising times
Also Fix:
 - Restore MaxDecidedRX on replay
 - When catchup_on_start_exit_on_failure == false, should startup on any kind of failure, not only timeout
 - lazy vtable LIMIT clause regression
 - DurabilityService.onEpochRetired
 - Command.validate when uniqueHlc differs
 - Avoid unsafe publication of AccordExecutor to scheduledFastTasks
 - AccordCache hitRate metric names
 - use long for return type of DurationSpec.toNanoseconds
 - Repair without all replicas should not request all Accord replicas participate
 - ExecuteAtSerializer
 - SyncPoints should be coordinated in an epoch that contains the ranges
Also Improve:
 - Split Accord startup into local+distributed, ensure we
 - Add logging to FetchDurableBefore on startup
 - Add randomised testing of AbstractLazyVirtualTable
 - Add validation of lazy virtual table key ordering
 - Don't send requests to faulty replicas
 - shrinkOrEvict large objects without holding lock
 - Accord dtest shutdown

patch by Benedict; reviewed by Alex Petrov for CASSANDRA-21042
2025-11-27 13:12:25 +00:00
Stefan Miklosovic dc89b8c802
Extend nodetool tablestats for dictionary memory usage
patch by Stefan Miklosovic; reviewed by Yifan Cai for CASSANDRA-20940
2025-11-19 19:12:26 +01:00
Stefan Miklosovic 136e5fd222
Add export, list, import sub-commands for nodetool compressiondictionary
patch by Stefan Miklosovic; reviewed by Yifan Cai for CASSANDRA-20941
2025-11-13 15:38:42 +01:00
Yifan Cai 307603a4ad Support ZSTD dictionary compression
patch by Yifan Cai; reviewed by Jon Haddad, Stefan Miklosovic for CASSANDRA-17021
2025-10-30 16:18:37 -07:00
Stefan Miklosovic 9c93d52ac9
Implement nodetool history
patch by Stefan Miklosovic; reviewed by Maxim Muzafarov for CASSANDRA-20851
2025-09-01 16:18:19 +02:00
Maxim Muzafarov 94b251f3ce
Migrate all nodetool commands from airline to picocli
Replace io.airlift:airline dependency with info.picocli:picocli across
all nodetool command implementations. This migration includes:

- Convert 160+ nodetool command classes from airline to picocli
- Add AbstractCommand base class for commands and utility methods
- Add NodetoolCommand top-level class for the cli utility
- Update all command classes to use @Command, @Option, and @Parameters
- Add plain text files to test command help output
- Add mock test classes for improved test coverage and parse validation
- Modify test infrastructure to work with picocli-based commands
- Add new layouts for cli formatting to preserve backwards compatibility

The migration maintains backward compatibility while providing improved
command-line parsing, better help system, and more robust argument
validation through picocli enhanced features.

patch by Maxim Muzafarov; reviewed by Caleb Rackliffe, Dmitry Konstantinov, Stefan Miklosovic for CASSANDRA-17445
2025-07-26 18:19:18 +02:00
Zhongxiang Zheng 2ff41551a6
Enable JMX server configuration to be in cassandra.yaml
patch by Zhongxiang Zheng; reviewed by Stefan Miklosovic, Maulin Vasavada, Cheng Wang, Jordan West for CASSANDRA-11695

Co-authored-by: Stefan Miklosovic <smiklosovic@apache.org>
Co-authored-by: Sam Tunnicliffe <samt@apache.org>
2024-12-16 11:01:29 +01:00
Stefan Miklosovic 98a0b54c40
Support dictionary lookup for CassandraPasswordValidator
patch by Stefan Miklosovic; reviewed by Dinesh Joshi, Francisco Guerrero for CASSANDRA-19762
2024-07-15 11:09:57 +02:00
Mike Adamson 949b760f55
Add support for a vector search index in SAI
- Adds jbellis/jvector (1.0.2) library for DiskANN based indexes on floating point vectors
- Adds ORDER BY ANN OF capability to do ANN search and order the results by score

 patch by Mike Adamson; reviewed by Andrés de la Peña, Jonathon Ellis for CASSANDRA-18715

Co-authored-by Jonathon Ellis jbellis@gmail.com
Co-authored-by Zhao Yang zhaoyangsingapore@gmail.com
2023-10-29 12:24:00 +01:00
Stefan Miklosovic 5a02e532d4
Merge branch 'cassandra-4.1' into cassandra-5.0 2023-10-10 10:16:22 +02:00
Stefan Miklosovic ea6461b870
Merge branch 'cassandra-4.0' into cassandra-4.1 2023-10-10 10:04:42 +02:00
Stefan Miklosovic b57c13603a
Remove byteman-related files from production sources
This patch also removes compress-lzf library (leftover from CASSANDRA-12229)
as well as it makes byte-buddy dependencies to be test scoped.

patch by Stefan Miklosovic; reviewed by Michael Semb Wever for CASSANDRA-18877
2023-10-10 09:51:11 +02:00
jkonisa f078c02cb5 Adding Mutual TLS authenticators for client & internode connections
Patch by Jyothsna Konisa & Dinesh Joshi; reviewed by Yifan Cai, Jon Meredith,
Yuki Morishita & Dinesh Joshi for CASSANDRA-18554

Co-Authored-By: Dinesh Joshi <djoshi@apache.org>
2023-07-28 13:54:06 -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
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
Mick Semb Wever 53b0661cbb
Fix rat checking for files with missing license headers
patch by Mick Semb Wever; reviewed by Brandon Williams, Ekaterina Dimitrova for CASSANDRA-16558
2021-04-19 17:18:26 +02:00
David Capwell 2ae1ec5dd2 Merge branch 'cassandra-3.11' into trunk 2020-10-12 11:07:44 -07:00
David Capwell 34dde962fc Merge branch 'cassandra-3.0' into cassandra-3.11 2020-10-12 11:06:32 -07:00
David Capwell 521a6e2aa9 Fixed a NullPointerException when calling nodetool enablethrift
patch by David Capwell; reviewed by Ekaterina Dimitrova, Jordan West, Yifan Cai for CASSANDRA-16127
2020-10-12 11:04:37 -07:00
Mick Semb Wever 92cde9b27c
Merge branch 'cassandra-3.11' into trunk 2018-03-15 17:45:10 +11:00
Mick Semb Wever 4c6a10af8b
SASI tokenizer for simple delimiter based entries
Patch by Mick Semb Wever; reviewed by Michael Kjellman for CASSANDRA-14247
2018-03-15 17:41:50 +11:00
T Jake Luciani d45cd7e658 Merge branch 'cassandra-3.11' into trunk 2017-04-25 09:30:25 -04:00
Jay Zhuang 2369faab79 Fix compaction-stress by using daemonInitialization
Patch by Jay Zhuang; reviewed by tjake for CASSANDRA-13188
2017-04-25 09:25:44 -04:00
Sylvain Lebresne 4881d9c308 Thrift removal
patch by Sylvain Lebresne; reviewed by Aleksey Yeschenko for CASSANDRA-11115
2016-12-13 10:27:12 +01:00
Sergio Bossa d43b9ce509 Support optional backpressure strategies at the coordinator
patch by Sergio Bossa; reviewed by Stefania Alborghetti for CASSANDRA-9318
2016-09-20 09:07:36 +08:00
Pavel Yaskevich eb82861c8d Correct english word stemming test and add a test for french
patch by doanduyhai; reviewed by xedin for CASSANDRA-12078
2016-06-26 01:50:32 -07:00
Sam Tunnicliffe 7b0c7164aa Integrated JMX Authentication and Authorization
Patch by Jan Karlsson and Sam Tunnicliffe; reviewed by Jake Luciani for
CASSANDRA-10091
2016-05-02 11:44:48 +01:00
Pavel Yaskevich 72790dc8e3 Integrate SASI index into Cassandra
patch by xedin; reviewed by beobal for CASSANDRA-10661
2016-01-23 19:35:29 -08:00
Mikhail Stepura 8137fce529 Handle CQL row marker in SSTableImport
patch by Mikhail Stepura; reviewed by Tyler Hobbs for CASSANDRA-7477
2014-08-15 13:11:47 -07:00
Jonathan Ellis 647bfc6d79 make sstable2json output more readable, and remove support for supercolumn json (CASSANDRA-7078)
patch by jbellis; reviewed by ayeschenko for CASSANDRA-7078
2014-04-23 22:00:21 -05:00
Brandon Williams 379212d5de Fix logback config in scripts and packaging.
Patch by Michael Shuler, reviewed by brandonwilliams for CASSANDRA-6530
2014-01-10 09:31:12 -06:00
Yuki Morishita d569f873de new json format with row level deletion; patch by David Alves, reviewed by yukim for CASSANDRA-4054 2012-07-12 10:40:24 -05:00