[ 
https://issues.apache.org/jira/browse/CASSANDRA-10721?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15038525#comment-15038525
 ] 

Benjamin Lerer commented on CASSANDRA-10721:
--------------------------------------------

* The {{referencesUserType(String name)}} does not check the keyspace for the 
UDT. I think it could lead to some problems if we had a UDT with the same name 
in a different keyspace. It might be good to add a unit test for it.
* It seems to me that if the {{referencesUserType}} method was in 
{{AbstractType}}  (something like: {{referencesUserType(String keyspace, 
ByteBuffer name)}}), it would removes all these {{asCQL3Type()}} calls and make 
the code more readable. What do you think?
* The {{isBroken}} and the follow-up notes should be removed. They are not 
needed by the patch.
* It might be good to add some extra unit tests to check UDT nested in (Sets, 
Maps or Tulpes) for extra security.
 

> Altering a UDT might break UDA deserialisation
> ----------------------------------------------
>
>                 Key: CASSANDRA-10721
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-10721
>             Project: Cassandra
>          Issue Type: Bug
>          Components: CQL, Distributed Metadata
>            Reporter: Aleksey Yeschenko
>            Assignee: Robert Stupp
>             Fix For: 3.0.x
>
>
> CASSANDRA-10650 switched UDA's {{initcond}} serialisation in schema to its 
> CQL literal. This means that if any particular field is renamed in the UDT, 
> or of its type gets changes, we will not be able to parse initcond back.
> We should either:
> 1) Forbid renames and type switches in UDTs that are being used in UDAs, or
> 2) Make sure we alter the UDAs in schema alongside the new UDT at all times



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

Reply via email to