[ https://issues.apache.org/jira/browse/CASSANDRA-4093?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13242144#comment-13242144 ]
Sylvain Lebresne commented on CASSANDRA-4093: --------------------------------------------- bq. but we don't index CTs yet either That's not true. We do support indexes on full CT currently (by the mere fact that CompositeType is a fully functional AbstractType). What we don't support (yet) is indexing on a specific component of a CT. Now, we agreed on CASSANDRA-3782 that it could sometimes be usefull to index a specific column in a wide row as a way of 'tagging' such wide rows (and there is probably other useful use cases). Why would that suddently stop making sense because the name is a composite one? So this is supported and this does have some reasonable use cases. As such, I *strongly* think that it would be unreasonable to break it (and in that case, auto-dropping the index for people (or even forcing them to do it) would be the worst possible user experience ever). And I even think we should seriously give some though about maintaining that possibility (the ability to index on a full column name) even in CQL3 (which will likely be a simple and logical extension of CASSANDRA-3792). bq. trying to preserve all the arbitrarily complex things you could do with the old CFMetadata I disagree that this is arbitrary complex. The patch adds the ability to specify for a ColumnDefinition to which component it refers to. If we want to support secondary indexes on specific component of a composite column (which I think is the goal of CASSANDRA-3680), we'll have to add that exact information to ColumnDefinition anyway. So I think it's really adding new and useful flexibility. > schema_* CFs do not respect column comparator which leads to CLI commands > failure. > ---------------------------------------------------------------------------------- > > Key: CASSANDRA-4093 > URL: https://issues.apache.org/jira/browse/CASSANDRA-4093 > Project: Cassandra > Issue Type: Bug > Components: Tools > Affects Versions: 1.1.0 > Reporter: Dave Brosius > Assignee: Sylvain Lebresne > Fix For: 1.1.0 > > Attachments: 4093.txt, CASSANDRA-4093-CD-changes.patch > > > ColumnDefinition.{ascii, utf8, bool, ...} static methods used to initialize > schema_* CFs column_metadata do not respect CF comparator and use > ByteBufferUtil.bytes(...) for column names which creates problems in CLI and > probably in other places. > The CompositeType validator throws exception on first column > String columnName = columnNameValidator.getString(columnDef.name); > Because it appears the composite type length header is wrong (25455) > AbstractCompositeType.getWithShortLength > java.lang.IllegalArgumentException > at java.nio.Buffer.limit(Buffer.java:247) > at > org.apache.cassandra.db.marshal.AbstractCompositeType.getBytes(AbstractCompositeType.java:50) > at > org.apache.cassandra.db.marshal.AbstractCompositeType.getWithShortLength(AbstractCompositeType.java:59) > at > org.apache.cassandra.db.marshal.AbstractCompositeType.getString(AbstractCompositeType.java:139) > at > org.apache.cassandra.cli.CliClient.describeColumnFamily(CliClient.java:2046) > at > org.apache.cassandra.cli.CliClient.describeKeySpace(CliClient.java:1969) > at > org.apache.cassandra.cli.CliClient.executeShowKeySpaces(CliClient.java:1574) > (seen in trunk) -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira