diff --git a/pom.xml b/pom.xml
index bf1b421f05..9cd3cdf532 100644
--- a/pom.xml
+++ b/pom.xml
@@ -4,7 +4,7 @@
io.stargate
sgv2-api-parent
- 2.1.0-BETA-11
+ 2.1.0-BETA-12
sgv2-jsonapi
1.0.8-SNAPSHOT
@@ -294,9 +294,9 @@
- com.coveo
+ com.spotify.fmt
fmt-maven-plugin
- 2.13
+ 2.23
process-sources
diff --git a/src/main/java/io/stargate/sgv2/jsonapi/api/model/command/clause/filter/FilterClause.java b/src/main/java/io/stargate/sgv2/jsonapi/api/model/command/clause/filter/FilterClause.java
index 63ba9dcf2f..4ecab9b4ff 100644
--- a/src/main/java/io/stargate/sgv2/jsonapi/api/model/command/clause/filter/FilterClause.java
+++ b/src/main/java/io/stargate/sgv2/jsonapi/api/model/command/clause/filter/FilterClause.java
@@ -16,7 +16,8 @@
@Schema(
type = SchemaType.OBJECT,
implementation = Object.class,
- example = """
+ example =
+ """
{"name": "Aaron", "country": "US"}
""")
public record FilterClause(LogicalExpression logicalExpression) {
diff --git a/src/main/java/io/stargate/sgv2/jsonapi/api/model/command/clause/sort/SortClause.java b/src/main/java/io/stargate/sgv2/jsonapi/api/model/command/clause/sort/SortClause.java
index 0789acefb3..298795b813 100644
--- a/src/main/java/io/stargate/sgv2/jsonapi/api/model/command/clause/sort/SortClause.java
+++ b/src/main/java/io/stargate/sgv2/jsonapi/api/model/command/clause/sort/SortClause.java
@@ -21,7 +21,8 @@
@Schema(
type = SchemaType.OBJECT,
implementation = Map.class,
- example = """
+ example =
+ """
{"user.age" : -1, "user.name" : 1}
""")
public record SortClause(@Valid List sortExpressions) {
diff --git a/src/main/java/io/stargate/sgv2/jsonapi/api/model/command/clause/update/ActionWithLocator.java b/src/main/java/io/stargate/sgv2/jsonapi/api/model/command/clause/update/ActionWithLocator.java
index ffce9b681c..636a9d6196 100644
--- a/src/main/java/io/stargate/sgv2/jsonapi/api/model/command/clause/update/ActionWithLocator.java
+++ b/src/main/java/io/stargate/sgv2/jsonapi/api/model/command/clause/update/ActionWithLocator.java
@@ -6,7 +6,9 @@
* Interface needed to allow easy sorting by {@code path} property exposed by Action record types.
*/
public interface ActionWithLocator {
- /** @return Path that the action targets (dotted notation) */
+ /**
+ * @return Path that the action targets (dotted notation)
+ */
PathMatchLocator locator();
/** Convenience method: path from {@code action()} */
diff --git a/src/main/java/io/stargate/sgv2/jsonapi/api/model/command/clause/update/UpdateOperation.java b/src/main/java/io/stargate/sgv2/jsonapi/api/model/command/clause/update/UpdateOperation.java
index b7605881db..97f80a63a7 100644
--- a/src/main/java/io/stargate/sgv2/jsonapi/api/model/command/clause/update/UpdateOperation.java
+++ b/src/main/java/io/stargate/sgv2/jsonapi/api/model/command/clause/update/UpdateOperation.java
@@ -23,6 +23,7 @@ protected UpdateOperation(List actions) {
public List actions() {
return actions;
}
+
/**
* Method called to apply operation to given document.
*
diff --git a/src/main/java/io/stargate/sgv2/jsonapi/config/AuthConfig.java b/src/main/java/io/stargate/sgv2/jsonapi/config/AuthConfig.java
index 8cb859ba17..4c949d3496 100644
--- a/src/main/java/io/stargate/sgv2/jsonapi/config/AuthConfig.java
+++ b/src/main/java/io/stargate/sgv2/jsonapi/config/AuthConfig.java
@@ -28,14 +28,18 @@
@ConfigMapping(prefix = "stargate.auth")
public interface AuthConfig {
- /** @return Header based authentication setup. */
+ /**
+ * @return Header based authentication setup.
+ */
@Valid
HeaderBasedAuthConfig headerBased();
/** Configuration for the header based authentication. */
interface HeaderBasedAuthConfig {
- /** @return If the header based auth is enabled. */
+ /**
+ * @return If the header based auth is enabled.
+ */
@WithDefault("true")
boolean enabled();
@@ -47,12 +51,16 @@ interface HeaderBasedAuthConfig {
@WithDefault(HttpConstants.AUTHENTICATION_TOKEN_HEADER_NAME)
String headerName();
- /** @return If the customization of the challenge sending should be done. */
+ /**
+ * @return If the customization of the challenge sending should be done.
+ */
@WithDefault("${stargate.exception-mappers.enabled:true}")
boolean customChallengeEnabled();
}
- /** @return Configuration for the cassandra token resolver. */
+ /**
+ * @return Configuration for the cassandra token resolver.
+ */
@Valid
TokenResolverConfig tokenResolver();
@@ -80,7 +88,9 @@ interface TokenResolverConfig {
@WithDefault("principal")
Optional<@Pattern(regexp = "header|principal|fixed|custom") String> type();
- /** @return Specific settings for the header
token resolver type. */
+ /**
+ * @return Specific settings for the header
token resolver type.
+ */
@Valid
HeaderTokenResolverConfig header();
@@ -95,13 +105,17 @@ interface HeaderTokenResolverConfig {
String headerName();
}
- /** @return Specific settings for the fixed
token resolver type. */
+ /**
+ * @return Specific settings for the fixed
token resolver type.
+ */
@Valid
FixedTokenResolverConfig fixed();
interface FixedTokenResolverConfig {
- /** @return Token value. */
+ /**
+ * @return Token value.
+ */
Optional token();
}
}
diff --git a/src/main/java/io/stargate/sgv2/jsonapi/config/CommandLevelLoggingConfig.java b/src/main/java/io/stargate/sgv2/jsonapi/config/CommandLevelLoggingConfig.java
index b11acb7ce0..54d133de64 100644
--- a/src/main/java/io/stargate/sgv2/jsonapi/config/CommandLevelLoggingConfig.java
+++ b/src/main/java/io/stargate/sgv2/jsonapi/config/CommandLevelLoggingConfig.java
@@ -28,15 +28,21 @@
@ConfigMapping(prefix = "stargate.jsonapi.logging")
public interface CommandLevelLoggingConfig {
- /** @return If request info logging is enabled. */
+ /**
+ * @return If request info logging is enabled.
+ */
@WithDefault("false")
boolean enabled();
- /** @return If only requests with errors should be logged. */
+ /**
+ * @return If only requests with errors should be logged.
+ */
@WithDefault("true")
boolean onlyResultsWithErrors();
- /** @return Set of tenants for which the request info should be logged. */
+ /**
+ * @return Set of tenants for which the request info should be logged.
+ */
@WithDefault(ALL_TENANTS)
Optional> enabledTenants();
}
diff --git a/src/main/java/io/stargate/sgv2/jsonapi/config/DocumentLimitsConfig.java b/src/main/java/io/stargate/sgv2/jsonapi/config/DocumentLimitsConfig.java
index d3bc4277c4..2f2a92b89a 100644
--- a/src/main/java/io/stargate/sgv2/jsonapi/config/DocumentLimitsConfig.java
+++ b/src/main/java/io/stargate/sgv2/jsonapi/config/DocumentLimitsConfig.java
@@ -63,7 +63,9 @@ public interface DocumentLimitsConfig {
@WithDefault("" + DEFAULT_MAX_DOCUMENT_SIZE)
int maxSize();
- /** @return Defines the maximum document depth (nesting), defaults to {@code 8 levels} */
+ /**
+ * @return Defines the maximum document depth (nesting), defaults to {@code 8 levels}
+ */
@Positive
@WithDefault("" + DEFAULT_MAX_DOCUMENT_DEPTH)
int maxDepth();
@@ -94,22 +96,30 @@ public interface DocumentLimitsConfig {
@WithDefault("" + DEFAULT_MAX_DOC_PROPERTIES)
int maxDocumentProperties();
- /** @return Defines the maximum length of a single Number value (in characters). */
+ /**
+ * @return Defines the maximum length of a single Number value (in characters).
+ */
@Positive
@WithDefault("" + DEFAULT_MAX_NUMBER_LENGTH)
int maxNumberLength();
- /** @return Defines the maximum length of a single String value (in bytes). */
+ /**
+ * @return Defines the maximum length of a single String value (in bytes).
+ */
@Positive
@WithDefault("" + DEFAULT_MAX_STRING_LENGTH_IN_BYTES)
int maxStringLengthInBytes();
- /** @return Maximum length of an indexable Array in document (in elements). */
+ /**
+ * @return Maximum length of an indexable Array in document (in elements).
+ */
@Positive
@WithDefault("" + DEFAULT_MAX_ARRAY_LENGTH)
int maxArrayLength();
- /** @return Maximum length of Vector ($vector) array allowed. */
+ /**
+ * @return Maximum length of Vector ($vector) array allowed.
+ */
@Positive
@WithDefault("" + DEFAULT_MAX_VECTOR_EMBEDDING_LENGTH)
int maxVectorEmbeddingLength();
diff --git a/src/main/java/io/stargate/sgv2/jsonapi/config/MultiTenancyConfig.java b/src/main/java/io/stargate/sgv2/jsonapi/config/MultiTenancyConfig.java
index 9864c4d5c6..4d1998f9bb 100644
--- a/src/main/java/io/stargate/sgv2/jsonapi/config/MultiTenancyConfig.java
+++ b/src/main/java/io/stargate/sgv2/jsonapi/config/MultiTenancyConfig.java
@@ -27,11 +27,15 @@
@ConfigMapping(prefix = "stargate.multi-tenancy")
public interface MultiTenancyConfig {
- /** @return If multi-tenancy is enabled. */
+ /**
+ * @return If multi-tenancy is enabled.
+ */
@WithDefault("false")
boolean enabled();
- /** @return Tenant resolver in case the multi-tenancy is active. */
+ /**
+ * @return Tenant resolver in case the multi-tenancy is active.
+ */
@Valid
TenantResolverConfig tenantResolver();
@@ -55,26 +59,36 @@ interface TenantResolverConfig {
*/
Optional<@Pattern(regexp = "subdomain|fixed|custom") String> type();
- /** @return Specific settings for the fixed
tenant resolver type. */
+ /**
+ * @return Specific settings for the fixed
tenant resolver type.
+ */
@Valid
FixedTenantResolverConfig fixed();
- /** @return Specific settings for the subdomain
tenant resolver type. */
+ /**
+ * @return Specific settings for the subdomain
tenant resolver type.
+ */
@Valid
SubdomainTenantResolverConfig subdomain();
interface FixedTenantResolverConfig {
- /** @return Tenant ID value. */
+ /**
+ * @return Tenant ID value.
+ */
Optional tenantId();
}
interface SubdomainTenantResolverConfig {
- /** @return Maximum characters to pull from the subdomain. */
+ /**
+ * @return Maximum characters to pull from the subdomain.
+ */
OptionalInt maxChars();
- /** @return The regex to validate the resolved tenant against. */
+ /**
+ * @return The regex to validate the resolved tenant against.
+ */
Optional regex();
}
}
diff --git a/src/main/java/io/stargate/sgv2/jsonapi/config/OperationsConfig.java b/src/main/java/io/stargate/sgv2/jsonapi/config/OperationsConfig.java
index c86c24af92..e98ff5388e 100644
--- a/src/main/java/io/stargate/sgv2/jsonapi/config/OperationsConfig.java
+++ b/src/main/java/io/stargate/sgv2/jsonapi/config/OperationsConfig.java
@@ -43,7 +43,9 @@ public interface OperationsConfig {
*/
public static final int DEFAULT_MAX_DOCUMENT_INSERT_COUNT = 100;
- /** @return Defines the default document page size, defaults to 20
. */
+ /**
+ * @return Defines the default document page size, defaults to 20
.
+ */
@Max(500)
@Positive
@WithDefault("20")
@@ -101,7 +103,9 @@ public interface OperationsConfig {
@WithDefault("" + DEFAULT_MAX_FILTER_SIZE)
int maxFilterObjectProperties();
- /** @return Maximum size of values array that can be sent in $in/$nin operator */
+ /**
+ * @return Maximum size of values array that can be sent in $in/$nin operator
+ */
@Max(100)
@Positive
@WithDefault("100")
@@ -123,7 +127,9 @@ public interface OperationsConfig {
@WithDefault("1000")
int maxCountLimit();
- /** @return Boolean flag to enable astra index guardrail too many indexes rollback */
+ /**
+ * @return Boolean flag to enable astra index guardrail too many indexes rollback
+ */
@WithDefault("true")
boolean tooManyIndexesRollbackEnabled();
@@ -144,7 +150,9 @@ public interface OperationsConfig {
/** Configuration setup for the Light-weight transactions. */
interface LwtConfig {
- /** @return Defines the maximum retry for lwt failure 3
. */
+ /**
+ * @return Defines the maximum retry for lwt failure 3
.
+ */
@Max(5)
@Positive
@WithDefault("3")
@@ -214,48 +222,67 @@ interface DatabaseConfig {
interface QueriesConfig {
- /** @return Settings for the consistency level. */
+ /**
+ * @return Settings for the consistency level.
+ */
@Valid
ConsistencyConfig consistency();
- /** @return Serial Consistency for queries. */
+ /**
+ * @return Serial Consistency for queries.
+ */
@WithDefault("LOCAL_SERIAL")
@WithConverter(ConsistencyLevelConverter.class)
ConsistencyLevel serialConsistency();
- /** @return Settings for the consistency level. */
+ /**
+ * @return Settings for the consistency level.
+ */
interface ConsistencyConfig {
- /** @return Consistency for queries making schema changes. */
+ /**
+ * @return Consistency for queries making schema changes.
+ */
@WithDefault("LOCAL_QUORUM")
@NotNull
@WithConverter(ConsistencyLevelConverter.class)
ConsistencyLevel schemaChanges();
- /** @return Consistency for queries writing the data. */
+ /**
+ * @return Consistency for queries writing the data.
+ */
@WithDefault("LOCAL_QUORUM")
@NotNull
@WithConverter(ConsistencyLevelConverter.class)
ConsistencyLevel writes();
- /** @return Consistency for queries reading the data. */
+ /**
+ * @return Consistency for queries reading the data.
+ */
@WithDefault("LOCAL_QUORUM")
@NotNull
@WithConverter(ConsistencyLevelConverter.class)
ConsistencyLevel reads();
- /** @return Consistency for vector search queries. */
+ /**
+ * @return Consistency for vector search queries.
+ */
@WithDefault("LOCAL_ONE")
@NotNull
@WithConverter(ConsistencyLevelConverter.class)
ConsistencyLevel vectorSearch();
}
}
- /** @return Flag to enable server side vectorization. */
+
+ /**
+ * @return Flag to enable server side vectorization.
+ */
@WithDefault("false")
boolean vectorizeEnabled();
- /** @return Flag to enable vectorization using embedding-gateway. */
+ /**
+ * @return Flag to enable vectorization using embedding-gateway.
+ */
@WithDefault("false")
boolean enableEmbeddingGateway();
diff --git a/src/main/java/io/stargate/sgv2/jsonapi/config/constants/HttpConstants.java b/src/main/java/io/stargate/sgv2/jsonapi/config/constants/HttpConstants.java
index 0263ea5e02..0cd86ee6ad 100644
--- a/src/main/java/io/stargate/sgv2/jsonapi/config/constants/HttpConstants.java
+++ b/src/main/java/io/stargate/sgv2/jsonapi/config/constants/HttpConstants.java
@@ -15,7 +15,9 @@ public interface HttpConstants {
/** JSON API Embedding serive Authentication token header name. */
String EMBEDDING_AUTHENTICATION_TOKEN_HEADER_NAME = "x-embedding-api-key";
- /** @return Embedding service header name 20
. */
+ /**
+ * @return Embedding service header name 20
.
+ */
@WithDefault(EMBEDDING_AUTHENTICATION_TOKEN_HEADER_NAME)
String embeddingApiKey();
}
diff --git a/src/main/java/io/stargate/sgv2/jsonapi/config/constants/TableCommentConstants.java b/src/main/java/io/stargate/sgv2/jsonapi/config/constants/TableCommentConstants.java
index c841364a89..2c55c87d5e 100644
--- a/src/main/java/io/stargate/sgv2/jsonapi/config/constants/TableCommentConstants.java
+++ b/src/main/java/io/stargate/sgv2/jsonapi/config/constants/TableCommentConstants.java
@@ -4,18 +4,25 @@ public interface TableCommentConstants {
/** Top-level key for table comment json */
String TOP_LEVEL_KEY = "collection";
+
/** Create collection options key */
String OPTIONS_KEY = "options";
+
/** Collection name key */
String COLLECTION_NAME_KEY = "name";
+
/** Collection indexing key */
String COLLECTION_INDEXING_KEY = "indexing";
+
/** Collection vector key */
String COLLECTION_VECTOR_KEY = "vector";
+
/** Schema version key */
String SCHEMA_VERSION_KEY = "schema_version";
+
/** Default id type key */
String DEFAULT_ID_KEY = "defaultId";
+
/** Schema version value */
int SCHEMA_VERSION_VALUE = 1;
}
diff --git a/src/main/java/io/stargate/sgv2/jsonapi/service/cql/ColumnUtils.java b/src/main/java/io/stargate/sgv2/jsonapi/service/cql/ColumnUtils.java
index e7452aa1d8..b172ea2357 100644
--- a/src/main/java/io/stargate/sgv2/jsonapi/service/cql/ColumnUtils.java
+++ b/src/main/java/io/stargate/sgv2/jsonapi/service/cql/ColumnUtils.java
@@ -23,6 +23,7 @@ public class ColumnUtils {
private static final Pattern PATTERN_DOUBLE_QUOTE = Pattern.compile("\"", Pattern.LITERAL);
private static final String ESCAPED_DOUBLE_QUOTE = Matcher.quoteReplacement("\"\"");
+
/**
* Updated regex pattern to support selecting collection entry lime map_column['entry_key'],
* set_column['set_value']
diff --git a/src/main/java/io/stargate/sgv2/jsonapi/service/cql/builder/QueryBuilder.java b/src/main/java/io/stargate/sgv2/jsonapi/service/cql/builder/QueryBuilder.java
index 28098ea78a..93df2a28f6 100644
--- a/src/main/java/io/stargate/sgv2/jsonapi/service/cql/builder/QueryBuilder.java
+++ b/src/main/java/io/stargate/sgv2/jsonapi/service/cql/builder/QueryBuilder.java
@@ -209,8 +209,9 @@ private void addExpressionCql(
condition.jsonTerm.addToCqlValues(values);
sb.append(" ").append(condition.predicate.toString()).append(" ?");
}
- default -> throw new IllegalArgumentException(
- String.format("Unsupported expression type %s", outerExpression.getExprType()));
+ default ->
+ throw new IllegalArgumentException(
+ String.format("Unsupported expression type %s", outerExpression.getExprType()));
}
}
@@ -261,15 +262,18 @@ private String formatFunctionCall(QueryBuilder.FunctionCall functionCall, List functionCalls.add(
- FunctionCall.similarityFunctionCall(columnName, "SIMILARITY_COSINE"));
- case EUCLIDEAN -> functionCalls.add(
- FunctionCall.similarityFunctionCall(columnName, "SIMILARITY_EUCLIDEAN"));
- case DOT_PRODUCT -> functionCalls.add(
- FunctionCall.similarityFunctionCall(columnName, "SIMILARITY_DOT_PRODUCT"));
- default -> throw new JsonApiException(
- ErrorCode.VECTOR_SEARCH_INVALID_FUNCTION_NAME,
- ErrorCode.VECTOR_SEARCH_INVALID_FUNCTION_NAME.getMessage() + similarityFunction);
+ case COSINE, UNDEFINED ->
+ functionCalls.add(FunctionCall.similarityFunctionCall(columnName, "SIMILARITY_COSINE"));
+ case EUCLIDEAN ->
+ functionCalls.add(
+ FunctionCall.similarityFunctionCall(columnName, "SIMILARITY_EUCLIDEAN"));
+ case DOT_PRODUCT ->
+ functionCalls.add(
+ FunctionCall.similarityFunctionCall(columnName, "SIMILARITY_DOT_PRODUCT"));
+ default ->
+ throw new JsonApiException(
+ ErrorCode.VECTOR_SEARCH_INVALID_FUNCTION_NAME,
+ ErrorCode.VECTOR_SEARCH_INVALID_FUNCTION_NAME.getMessage() + similarityFunction);
}
return this;
}
diff --git a/src/main/java/io/stargate/sgv2/jsonapi/service/cqldriver/CQLSessionCache.java b/src/main/java/io/stargate/sgv2/jsonapi/service/cqldriver/CQLSessionCache.java
index 9c1163c237..8dfb6e12fa 100644
--- a/src/main/java/io/stargate/sgv2/jsonapi/service/cqldriver/CQLSessionCache.java
+++ b/src/main/java/io/stargate/sgv2/jsonapi/service/cqldriver/CQLSessionCache.java
@@ -43,14 +43,19 @@ public class CQLSessionCache {
* request
*/
private static final String DEFAULT_TENANT = "default_tenant";
+
/** CQL username to be used when the backend is AstraDB */
private static final String TOKEN = "token";
+
/** CQLSession cache. */
private final LoadingCache sessionCache;
+
/** Database type Astra */
public static final String ASTRA = "astra";
+
/** Database type OSS cassandra */
public static final String CASSANDRA = "cassandra";
+
/** Persistence type SSTable Writer */
public static final String OFFLINE_WRITER = "offline_writer";
diff --git a/src/main/java/io/stargate/sgv2/jsonapi/service/cqldriver/TenantAwareCqlSessionBuilder.java b/src/main/java/io/stargate/sgv2/jsonapi/service/cqldriver/TenantAwareCqlSessionBuilder.java
index a7430553fe..317fe32d99 100644
--- a/src/main/java/io/stargate/sgv2/jsonapi/service/cqldriver/TenantAwareCqlSessionBuilder.java
+++ b/src/main/java/io/stargate/sgv2/jsonapi/service/cqldriver/TenantAwareCqlSessionBuilder.java
@@ -19,6 +19,7 @@ public class TenantAwareCqlSessionBuilder extends CqlSessionBuilder {
* TenantAwareDriverContext
*/
public static final String TENANT_ID_PROPERTY_KEY = "TENANT_ID";
+
/** Tenant ID that will be passed to the CQLSession via TenantAwareDriverContext */
private final String tenantId;
diff --git a/src/main/java/io/stargate/sgv2/jsonapi/service/cqldriver/executor/CollectionSettings.java b/src/main/java/io/stargate/sgv2/jsonapi/service/cqldriver/executor/CollectionSettings.java
index a1a266ed52..06620a4a27 100644
--- a/src/main/java/io/stargate/sgv2/jsonapi/service/cqldriver/executor/CollectionSettings.java
+++ b/src/main/java/io/stargate/sgv2/jsonapi/service/cqldriver/executor/CollectionSettings.java
@@ -176,9 +176,10 @@ public static SimilarityFunction fromString(String similarityFunction) {
case "cosine" -> COSINE;
case "euclidean" -> EUCLIDEAN;
case "dot_product" -> DOT_PRODUCT;
- default -> throw new JsonApiException(
- ErrorCode.VECTOR_SEARCH_INVALID_FUNCTION_NAME,
- ErrorCode.VECTOR_SEARCH_INVALID_FUNCTION_NAME.getMessage() + similarityFunction);
+ default ->
+ throw new JsonApiException(
+ ErrorCode.VECTOR_SEARCH_INVALID_FUNCTION_NAME,
+ ErrorCode.VECTOR_SEARCH_INVALID_FUNCTION_NAME.getMessage() + similarityFunction);
};
}
}
@@ -226,8 +227,9 @@ public static AuthenticationType fromString(String authenticationType) {
case "none" -> NONE;
case "header" -> HEADER;
case "shared_secret" -> SHARED_SECRET;
- default -> throw ErrorCode.VECTORIZE_INVALID_AUTHENTICATION_TYPE.toApiException(
- "'%s'", authenticationType);
+ default ->
+ throw ErrorCode.VECTORIZE_INVALID_AUTHENTICATION_TYPE.toApiException(
+ "'%s'", authenticationType);
};
}
}
diff --git a/src/main/java/io/stargate/sgv2/jsonapi/service/cqldriver/executor/QueryExecutor.java b/src/main/java/io/stargate/sgv2/jsonapi/service/cqldriver/executor/QueryExecutor.java
index c19f91f22a..652238ac25 100644
--- a/src/main/java/io/stargate/sgv2/jsonapi/service/cqldriver/executor/QueryExecutor.java
+++ b/src/main/java/io/stargate/sgv2/jsonapi/service/cqldriver/executor/QueryExecutor.java
@@ -96,6 +96,7 @@ public CompletionStage executeEstimatedCount(
return cqlSessionCache.getSession(dataApiRequestInfo).executeAsync(simpleStatement);
}
+
/**
* Execute vector search query with bound statement.
*
diff --git a/src/main/java/io/stargate/sgv2/jsonapi/service/operation/model/ReadOperation.java b/src/main/java/io/stargate/sgv2/jsonapi/service/operation/model/ReadOperation.java
index d3967eeddd..c3dc8db378 100644
--- a/src/main/java/io/stargate/sgv2/jsonapi/service/operation/model/ReadOperation.java
+++ b/src/main/java/io/stargate/sgv2/jsonapi/service/operation/model/ReadOperation.java
@@ -167,6 +167,7 @@ default Uni findDocument(
}
byte true_byte = (byte) 1;
+
/**
* This method reads upto system fixed limit
*
@@ -360,6 +361,7 @@ private String extractPageStateFromResultSet(AsyncResultSet rSet) {
}
return null;
}
+
/**
* Default implementation to run count query and parse the result set, this approach counts by key
* field
diff --git a/src/main/java/io/stargate/sgv2/jsonapi/service/operation/model/impl/DBFilterBase.java b/src/main/java/io/stargate/sgv2/jsonapi/service/operation/model/impl/DBFilterBase.java
index 4b8db81756..90e51fe2a0 100644
--- a/src/main/java/io/stargate/sgv2/jsonapi/service/operation/model/impl/DBFilterBase.java
+++ b/src/main/java/io/stargate/sgv2/jsonapi/service/operation/model/impl/DBFilterBase.java
@@ -650,6 +650,7 @@ boolean canAddField() {
return false;
}
}
+
/** Filter for document where array matches (data in same order) as the array in request */
public static class ArrayEqualsFilter extends MapFilterBase {
private final List