diff --git a/CHANGES.txt b/CHANGES.txt index 924faca89a..a20ccd410a 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,5 +1,4 @@ 6.0-alpha2 - * Add blob type support to SAI (CASSANDRA-20012) * Apply performance optimizations for rows merging logic (CASSANDRA-21524) * Fix operationMode reporting DECOMMISSION_FAILED instead of LEAVING when resuming a failed decommission (CASSANDRA-21493) * Avoid megamorphic calls when serializing and deserializing fixed-length values (CASSANDRA-21536) @@ -36,6 +35,7 @@ * Safely regain ranges and delete retired command stores (CASSANDRA-21212) * Reduce memory allocations in miscellaneous places along read path (CASSANDRA-21360) * Avoid ByteBuffer wrapping in cql3.selection.Selector.InputRow to reduce memory allocation rate (CASSANDRA-21362) + * Add blob type support to SAI (CASSANDRA-20012) * Reduce cost to calculate BTreeRow.minDeletionTime (CASSANDRA-21414) * Implement custom CassandraThread to keep direct references to frequently used thread local objects (CASSANDRA-21020) * Avoid megamorphic call overhead at RandomAccessReader#current (CASSANDRA-21399) diff --git a/doc/modules/cassandra/pages/developing/cql/indexing/sai/sai-faq.adoc b/doc/modules/cassandra/pages/developing/cql/indexing/sai/sai-faq.adoc index c32bd533cb..96523966be 100644 --- a/doc/modules/cassandra/pages/developing/cql/indexing/sai/sai-faq.adoc +++ b/doc/modules/cassandra/pages/developing/cql/indexing/sai/sai-faq.adoc @@ -161,7 +161,7 @@ The supported types are: `ASCII, BIGINT, BLOB, BOOLEAN, DATE, DECIMAL, DOUBLE, F [NOTE] ==== -* The `BLOB` support was new starting with Cassandra 5.0.7. +* The `BLOB` support was new starting with Cassandra 6.0. * SAI also supports collections -- see the xref:#saiCollectionColumnFaq[next FAQ]. ==== @@ -348,4 +348,4 @@ SAI returns `InvalidRequestException` if you try to define an index on a column == What partitioner does SAI support? -SAI supports only the `Murmur3Partitioner`. +SAI supports only the `Murmur3Partitioner`. \ No newline at end of file diff --git a/src/java/org/apache/cassandra/index/sai/utils/IndexTermType.java b/src/java/org/apache/cassandra/index/sai/utils/IndexTermType.java index d0b1457419..79b1d10760 100644 --- a/src/java/org/apache/cassandra/index/sai/utils/IndexTermType.java +++ b/src/java/org/apache/cassandra/index/sai/utils/IndexTermType.java @@ -346,6 +346,11 @@ public class IndexTermType return this.columnMetadata.compareTo(columnMetadata) == 0; } + public static boolean isEqOnlyType(AbstractType type) + { + return EQ_ONLY_TYPES.contains(type); + } + /** * Indicates if the type encoding supports rounding of the raw value. *

diff --git a/test/unit/org/apache/cassandra/tools/nodetool/GuardrailsConfigCommandsTest.java b/test/unit/org/apache/cassandra/tools/nodetool/GuardrailsConfigCommandsTest.java index 30376f75c5..12188d6d72 100644 --- a/test/unit/org/apache/cassandra/tools/nodetool/GuardrailsConfigCommandsTest.java +++ b/test/unit/org/apache/cassandra/tools/nodetool/GuardrailsConfigCommandsTest.java @@ -301,8 +301,8 @@ public class GuardrailsConfigCommandsTest extends CQLTester "partition_tombstones_fail_threshold -1 \n" + "partition_tombstones_warn_threshold -1 \n" + "sai_blob_term_size_fail_threshold 8KiB \n" + - "sai_frozen_term_size_fail_threshold 8KiB \n" + "sai_blob_term_size_warn_threshold 1KiB \n" + + "sai_frozen_term_size_fail_threshold 8KiB \n" + "sai_frozen_term_size_warn_threshold 1KiB \n" + "sai_sstable_indexes_per_query_fail_threshold -1 \n" + "sai_sstable_indexes_per_query_warn_threshold 32 \n" +