You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "James Flowers (Jira)" <ji...@apache.org> on 2022/10/04 07:53:00 UTC

[jira] [Assigned] (CASSANDRA-17913) Nested selection of reversed collections fails

     [ https://issues.apache.org/jira/browse/CASSANDRA-17913?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

James Flowers reassigned CASSANDRA-17913:
-----------------------------------------

    Assignee: James Flowers

> Nested selection of reversed collections fails
> ----------------------------------------------
>
>                 Key: CASSANDRA-17913
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-17913
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Consistency/Coordination, CQL/Semantics, Legacy/Local Write-Read Paths
>            Reporter: David Capwell
>            Assignee: James Flowers
>            Priority: Normal
>             Fix For: 4.0.x, 4.1.x
>
>
> The following test fails caused by the fact we make reversed a type that wraps the underline type
> {code:java}
> @Test
>     public void testMapsReversed() throws Throwable
>     {
>         createTable("CREATE TABLE %s (" +
>                     "   k int, " +
>                     "   c frozen<map<text, int>>, " +
>                     "   v int, " +
>                     "   PRIMARY KEY(k, c)" +
>                     ") WITH CLUSTERING ORDER BY (c DESC)");
>         execute("SELECT c['testing'] FROM %s");
>     }
> {code}
> With the error
> {code:java}
> org.apache.cassandra.exceptions.InvalidRequestException: Invalid element selection: c is of type frozen<map<text, int>> is not a collection
> {code}
> When you look in a debugger you see that the real type is ReversedType(MapType(…)), so the current checks fail.
> {+}Additional information for newcomers{+}:
>  * The problem impact element selection as well as range selection that where introduced in CASSANDRA-7396 as part of 4.0. So the patch will need to be done for 4.0.
>  * The checks that needs to be modified is in {{Selectable.WithElementSelection}} and {{Selectable.WithSliceSelection}}
>  * The unit tests should be added to {{CollectionsTest}}



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

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