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

Robert Stupp reassigned CASSANDRA-8105:
---------------------------------------

    Assignee: Robert Stupp

> NPE for null embedded UDT inside set
> ------------------------------------
>
>                 Key: CASSANDRA-8105
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-8105
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>            Reporter: Andy Ketskes
>            Assignee: Robert Stupp
>              Labels: cql
>             Fix For: 2.1.1
>
>         Attachments: 8105.txt
>
>
> An NPE is thrown parsing an INSERT statement when a embedded UDT inside 
> another UDT is set to null inside a set.
> This sounds very convoluted, but the examples below will hopefully make it 
> clear...
> With the following definitions:
> CREATE TYPE ut1 (a int, b int);
> CREATE TYPE ut2 (j frozen<ut1>, k int);
> CREATE TYPE ut3 (i int, j frozen<ut1>);
> CREATE TABLE tab1 (x int PRIMARY KEY, y set<frozen<ut2>>);
> CREATE TABLE tab2 (x int PRIMARY KEY, y list<frozen<ut2>>);
> CREATE TABLE tab3 (x int PRIMARY KEY, y set<frozen<ut3>>);
> This query throws a NullPointerException:
> INSERT INTO tab1 (x, y) VALUES (1, { { k: 1 } });
> These however doesn't:
> INSERT INTO tab2 (x, y) VALUES (1, [ { k: 1 } ]);
> INSERT INTO tab3 (x, y) VALUES (1, { { i: 1 } });
> So, the bug seems to be triggered only when the UDT is in a set, lists are 
> fine. If the embedded UDT is after the value specified in the query, the bug  
> doesn't seem to trigger.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to