[
https://issues.apache.org/jira/browse/CASSANDRA-18652?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Andres de la Peña updated CASSANDRA-18652:
------------------------------------------
Fix Version/s: 5.0
(was: 5.x)
Source Control Link:
https://github.com/apache/cassandra/commit/c95e5a556709cf131ba074680585106559ff9511
Resolution: Fixed
Status: Resolved (was: Ready to Commit)
> Improve vector value validation errors
> --------------------------------------
>
> Key: CASSANDRA-18652
> URL: https://issues.apache.org/jira/browse/CASSANDRA-18652
> Project: Cassandra
> Issue Type: Improvement
> Components: Cluster/Schema
> Reporter: Andres de la Peña
> Assignee: Andres de la Peña
> Priority: Normal
> Fix For: 5.0
>
> Time Spent: 50m
> Remaining Estimate: 0h
>
> Some of the error messages shown when trying to bind a vector column with a
> wrong value are a bit obscure. For example, if we try to write a value with
> the wrong number of dimensions:
> {code}
> createTable("CREATE TABLE %s (pk int primary key, value vector<int, 2>)");
> execute("INSERT INTO %s (pk, value) VALUES (0, ?)", vector(1));
> {code}
> The error is:
> {code}
> java.lang.IndexOutOfBoundsException: Attempted to read 4, but the size is 0
> {code}
> I understand that we cannot provide a lot of information about a
> non-understandable bind value, since we don't even know whether it's a vector
> or something entirely different. But we could try to improve it a bit and
> throw a {{MarshalException}} that will be translated to a
> {{InvalidRequestException}}, and provide generic messages similar to those
> used by collections:
> {code}
> InvalidRequestException: Not enough bytes to read a vector<int, 2>
> {code}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]