cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sylvain Lebresne (Commented) (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CASSANDRA-4093) schema_* CFs do not respect column comparator which leads to CLI commands failure.
Date Fri, 30 Mar 2012 07:52:45 GMT

    [ 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

        

Mime
View raw message