Hi all, I'm trying to understand the behavior of simple and complex columns in Cassandra. I was looking at UnfilteredSerializer.java, serializeRowBody() checks for a timestamp flag and then only it writes it. In case of writeComplexColumn(), there is no timestamp being written. Also, as per my understanding, a complex column contains several simple columns each of which may or may not have a timestamp associated.
My question is if there is no mandatory timestamp for either simple or complex columns, how the data will be merged at the time of read request based on the timestamp given that there can be more than one copy of the same data in sstables? Also, is it allowed in cql queries to update one or more simple columns within a complex columns? Or the entire complex is updated whenever there is a update query? Thanks, Preetika