You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Tyler Hobbs (JIRA)" <ji...@apache.org> on 2015/08/07 21:12:47 UTC

[jira] [Updated] (CASSANDRA-7423) Allow updating individual subfields of UDT

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

Tyler Hobbs updated CASSANDRA-7423:
-----------------------------------
    Assignee:     (was: Tyler Hobbs)

> Allow updating individual subfields of UDT
> ------------------------------------------
>
>                 Key: CASSANDRA-7423
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-7423
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: API, Core
>            Reporter: Tupshin Harper
>              Labels: cql
>             Fix For: 3.x
>
>
> Since user defined types were implemented in CASSANDRA-5590 as blobs (you have to rewrite the entire type in order to make any modifications), they can't be safely used without LWT for any operation that wants to modify a subset of the UDT's fields by any client process that is not authoritative for the entire blob. 
> When trying to use UDTs to model complex records (particularly with nesting), this is not an exceptional circumstance, this is the totally expected normal situation. 
> The use of UDTs for anything non-trivial is harmful to either performance or consistency or both.
> edit: to clarify, i believe that most potential uses of UDTs should be considered anti-patterns until/unless we have field-level r/w access to individual elements of the UDT, with individual timestamps and standard LWW semantics



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