[
https://issues.apache.org/jira/browse/CASSANDRA-7206?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14007418#comment-14007418
]
Nick Bailey commented on CASSANDRA-7206:
----------------------------------------
Does setting a UDT field to null save the space for that field on disk?
> UDT - allow null / non-existant attributes
> ------------------------------------------
>
> Key: CASSANDRA-7206
> URL: https://issues.apache.org/jira/browse/CASSANDRA-7206
> Project: Cassandra
> Issue Type: Improvement
> Components: Core
> Reporter: Robert Stupp
> Assignee: Sylvain Lebresne
> Fix For: 2.1 rc1
>
> Attachments: 7206.txt
>
>
> C* 2.1 CQL User-Defined-Types are really fine and useful.
> But it lacks the possibility to omit attributes or set them to null.
> Would be great to have the possibility to create UDT "instances" with some
> attributes missing.
> Also changing the UDT definition (for example: {{alter type add new_attr}})
> will break running applications that rely on the "previous" definition of the
> UDT.
> For exmple:
> {code}
> CREATE TYPE foo (
> attr_one text,
> attr_two int );
> CREATE TABLE bar (
> id int,
> comp foo );
> {code}
> {code}
> INSERT INTO bar (id, com) VALUES (1, {attr_one: 'cassandra', attr_two: 2});
> {code}
> works
> {code}
> INSERT INTO bar (id, com) VALUES (1, {attr_one: 'cassandra'});
> {code}
> does not work
> {code}
> ALTER TYPE foo ADD attr_three timestamp;
> {code}
> {code}
> INSERT INTO bar (id, com) VALUES (1, {attr_one: 'cassandra', attr_two: 2});
> {code}
> will no longer work (missing attribute)
--
This message was sent by Atlassian JIRA
(v6.2#6252)