This is an automated email from the ASF dual-hosted git repository.

maedhroz pushed a commit to branch trunk
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit b37f47b3ee8c291e8cbbd95f91b3fe04df50cfa4
Merge: 2e7def7626 be507c6e99
Author: Caleb Rackliffe <calebrackli...@gmail.com>
AuthorDate: Wed Apr 3 16:37:43 2024 -0500

    Merge branch 'cassandra-5.0' into trunk
    
    * cassandra-5.0:
      Warn clients about possible consistency violations for filtering queries 
against multiple mutable columns

 CHANGES.txt                                        |   1 +
 src/java/org/apache/cassandra/config/Config.java   |   2 +
 .../apache/cassandra/config/GuardrailsOptions.java |  29 +++++
 .../org/apache/cassandra/cql3/QueryProcessor.java  |   2 +-
 .../apache/cassandra/cql3/UntypedResultSet.java    |   4 +-
 .../cql3/restrictions/StatementRestrictions.java   |   3 +-
 .../cassandra/cql3/statements/SelectStatement.java |  45 ++++----
 .../org/apache/cassandra/db/filter/RowFilter.java  |  10 +-
 .../apache/cassandra/db/guardrails/Guardrails.java |  39 +++++++
 .../cassandra/db/guardrails/GuardrailsConfig.java  |  16 +++
 .../cassandra/db/guardrails/GuardrailsMBean.java   |  16 +++
 .../GuardrailNonPartitionRestrictedQueryTest.java  |  37 ++-----
 .../test/guardrails/GuardrailTester.java           |  41 ++++++-
 .../guardrails/IntersectFilteringQueryTest.java    | 120 +++++++++++++++++++++
 14 files changed, 311 insertions(+), 54 deletions(-)

diff --cc CHANGES.txt
index 3703a0bf04,cb3e2676cb..c8ce4d9fae
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,33 -1,5 +1,34 @@@
 -5.0-beta2
 +5.1
 + * Expose all dropwizard metrics in virtual tables (CASSANDRA-14572)
 + * Ensured that PropertyFileSnitchTest do not overwrite 
cassandra-toploogy.properties (CASSANDRA-19502)
 + * Add option for MutualTlsAuthenticator to restrict the certificate validity 
period (CASSANDRA-18951)
 + * Fix StorageService::constructRangeToEndpointMap for non-distributed 
keyspaces (CASSANDRA-19255)
 + * Group nodetool cms commands into single command group (CASSANDRA-19393)
 + * Register the measurements of the bootstrap process as Dropwizard metrics 
(CASSANDRA-19447)
 + * Add LIST SUPERUSERS CQL statement (CASSANDRA-19417)
 + * Modernize CQLSH datetime conversions (CASSANDRA-18879)
 + * Harry model and in-JVM tests for partition-restricted 2i queries 
(CASSANDRA-18275)
 + * Refactor cqlshmain global constants (CASSANDRA-19201)
 + * Remove native_transport_port_ssl (CASSANDRA-19397)
 + * Make nodetool reconfigurecms sync by default and add --cancel to be able 
to cancel ongoing reconfigurations (CASSANDRA-19216)
 + * Expose auth mode in system_views.clients, nodetool clientstats, metrics 
(CASSANDRA-19366)
 + * Remove sealed_periods and last_sealed_period tables (CASSANDRA-19189)
 + * Improve setup and initialisation of LocalLog/LogSpec (CASSANDRA-19271)
 + * Refactor structure of caching metrics and expose auth cache metrics via 
JMX (CASSANDRA-17062)
 + * Allow CQL client certificate authentication to work without sending an 
AUTHENTICATE request (CASSANDRA-18857)
 + * Extend nodetool tpstats and system_views.thread_pools with detailed pool 
parameters (CASSANDRA-19289)
 + * Remove dependency on Sigar in favor of OSHI (CASSANDRA-16565)
 + * Simplify the bind marker and Term logic (CASSANDRA-18813)
 + * Limit cassandra startup to supported JDKs, allow higher JDKs by setting 
CASSANDRA_JDK_UNSUPPORTED (CASSANDRA-18688)
 + * Standardize nodetool tablestats formatting of data units (CASSANDRA-19104)
 + * Make nodetool tablestats use number of significant digits for time and 
average values consistently (CASSANDRA-19015)
 + * Upgrade jackson to 2.15.3 and snakeyaml to 2.1 (CASSANDRA-18875)
 + * Transactional Cluster Metadata [CEP-21] (CASSANDRA-18330)
 + * Add ELAPSED command to cqlsh (CASSANDRA-18861)
 + * Add the ability to disable bulk loading of SSTables (CASSANDRA-18781)
 + * Clean up obsolete functions and simplify cql_version handling in cqlsh 
(CASSANDRA-18787)
 +Merged from 5.0:
+  * Warn clients about possible consistency violations for filtering queries 
against multiple mutable columns (CASSANDRA-19489)
   * Align buffer with commitlog segment size (CASSANDRA-19471)
   * Ensure SAI indexes empty byte buffers for types that allow them as a valid 
input (CASSANDRA-19461)
   * Deprecate Python 3.7 and earlier, but allow cqlsh to run with Python 
3.6-3.11 (CASSANDRA-19467)
diff --cc 
src/java/org/apache/cassandra/cql3/restrictions/StatementRestrictions.java
index 9e145a2208,4f6b829191..587cc41638
--- a/src/java/org/apache/cassandra/cql3/restrictions/StatementRestrictions.java
+++ b/src/java/org/apache/cassandra/cql3/restrictions/StatementRestrictions.java
@@@ -781,7 -780,8 +781,8 @@@ public final class StatementRestriction
              return RowFilter.none();
  
          // If there is only one replica, we don't need reconciliation at any 
consistency level. 
-         boolean needsReconciliation = 
options.getConsistency().needsReconciliation()
 -        boolean needsReconciliation = !table.isVirtual() 
++        boolean needsReconciliation = !table.isVirtual()
+                                       && 
options.getConsistency().needsReconciliation()
                                        && 
Keyspace.open(table.keyspace).getReplicationStrategy().getReplicationFactor().allReplicas
 > 1;
  
          RowFilter filter = RowFilter.create(needsReconciliation);


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org

Reply via email to