[jira] [Updated] (CASSANDRA-11502) Fix denseness and column metadata updates coming from Thrift

2016-04-27 Thread Aleksey Yeschenko (JIRA)

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

Aleksey Yeschenko updated CASSANDRA-11502:
--
   Resolution: Fixed
Fix Version/s: (was: 3.0.x)
   (was: 2.2.x)
   (was: 3.x)
   2.2.7
   3.0.6
   3.6
Reproduced In: 2.2.5, 2.1.13  (was: 2.1.13, 2.2.5)
   Status: Resolved  (was: Patch Available)

> Fix denseness and column metadata updates coming from Thrift
> 
>
> Key: CASSANDRA-11502
> URL: https://issues.apache.org/jira/browse/CASSANDRA-11502
> Project: Cassandra
>  Issue Type: Bug
>  Components: Distributed Metadata
>Reporter: Aleksey Yeschenko
>Assignee: Aleksey Yeschenko
>Priority: Minor
> Fix For: 3.6, 3.0.6, 2.2.7
>
>
> It was 
> [decided|https://issues.apache.org/jira/browse/CASSANDRA-7744?focusedCommentId=14095472=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14095472]
>  that we'd be recalculating {{is_dense}} for table updates coming from Thrift 
> on every change. However, due to some oversight, {{is_dense}} can only go 
> from {{false}} to {{true}}. Once dense, even adding a {{REGULAR}} column will 
> not reset {{is_dense}} back to {{false}}.
> The recalculation fails because no matter what happens, we never remove the 
> auto-generated {{CLUSTERING}} and {{COMPACT_VALUE}} columns of a dense table.
> Which ultimately leads to the issue on 2.2 to 3.0 upgrade (see 
> CASSANDRA-11315).
> What we should do is remove the special-case for Thrift in 
> {{LegacySchemaTables::makeUpdateTableMutation}} and correct the logic in 
> {{ThriftConversion::internalFromThrift}} to remove those columns when going 
> from dense to sparse.
> This is not enough to fix CASSANDRA-11315, however, as we need to handle 
> pre-patch upgrades, and upgrades from 2.1. Fixing it in 2.2 means a) getting 
> proper schema from {{DESCRIBE}} now and b) using the more efficient 
> {{SparseCellNameType}} when you add columns.



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


[jira] [Updated] (CASSANDRA-11502) Fix denseness and column metadata updates coming from Thrift

2016-04-07 Thread Aleksey Yeschenko (JIRA)

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

Aleksey Yeschenko updated CASSANDRA-11502:
--
 Reviewer: Sylvain Lebresne
Reproduced In: 2.2.5, 2.1.13  (was: 2.1.13, 2.2.5)
   Status: Patch Available  (was: Open)

> Fix denseness and column metadata updates coming from Thrift
> 
>
> Key: CASSANDRA-11502
> URL: https://issues.apache.org/jira/browse/CASSANDRA-11502
> Project: Cassandra
>  Issue Type: Bug
>  Components: Distributed Metadata
>Reporter: Aleksey Yeschenko
>Assignee: Aleksey Yeschenko
>Priority: Minor
> Fix For: 2.2.x, 3.0.x, 3.x
>
>
> It was 
> [decided|https://issues.apache.org/jira/browse/CASSANDRA-7744?focusedCommentId=14095472=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-14095472]
>  that we'd be recalculating {{is_dense}} for table updates coming from Thrift 
> on every change. However, due to some oversight, {{is_dense}} can only go 
> from {{false}} to {{true}}. Once dense, even adding a {{REGULAR}} column will 
> not reset {{is_dense}} back to {{false}}.
> The recalculation fails because no matter what happens, we never remove the 
> auto-generated {{CLUSTERING}} and {{COMPACT_VALUE}} columns of a dense table.
> Which ultimately leads to the issue on 2.2 to 3.0 upgrade (see 
> CASSANDRA-11315).
> What we should do is remove the special-case for Thrift in 
> {{LegacySchemaTables::makeUpdateTableMutation}} and correct the logic in 
> {{ThriftConversion::internalFromThrift}} to remove those columns when going 
> from dense to sparse.
> This is not enough to fix CASSANDRA-11315, however, as we need to handle 
> pre-patch upgrades, and upgrades from 2.1. Fixing it in 2.2 means a) getting 
> proper schema from {{DESCRIBE}} now and b) using the more efficient 
> {{SparseCellNameType}} when you add columns.



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