cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jonathan Ellis (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CASSANDRA-5793) OPP seems completely unsupported
Date Tue, 23 Jul 2013 13:32:51 GMT

    [ https://issues.apache.org/jira/browse/CASSANDRA-5793?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13716384#comment-13716384
] 

Jonathan Ellis commented on CASSANDRA-5793:
-------------------------------------------

bq. One possibility is that getToken of OPP can return hex value if it fails to encode bytes
to UTF-8 instead of throwing error.

I can't think of how it would break anything to accept keys we previously rejected.
                
> OPP seems completely unsupported
> --------------------------------
>
>                 Key: CASSANDRA-5793
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-5793
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 1.2.5
>         Environment: Cassandra on Ubuntu
>            Reporter: Vara Kumar
>             Fix For: 1.2.7
>
>
> We were using 0.7.6 version. And upgraded to 1.2.5 today. We were using OPP (OrderPreservingPartitioner).
> OPP throws error when any node join the cluster. Cluster can not be brought up due to
this error. After digging little deep, We realized that "peers" column family is defined with
key as type "inet". Looks like many other column families in system keyspace has same issue.
> Exception trace:
> java.lang.RuntimeException: The provided key was not UTF8 encoded.
> 	at org.apache.cassandra.dht.OrderPreservingPartitioner.getToken(OrderPreservingPartitioner.java:172)
> 	at org.apache.cassandra.dht.OrderPreservingPartitioner.decorateKey(OrderPreservingPartitioner.java:44)
> 	at org.apache.cassandra.db.Table.apply(Table.java:379)
> 	at org.apache.cassandra.db.Table.apply(Table.java:353)
> 	at org.apache.cassandra.db.RowMutation.apply(RowMutation.java:258)
> 	at org.apache.cassandra.cql3.statements.ModificationStatement.executeInternal(ModificationStatement.java:117)
> 	at org.apache.cassandra.cql3.QueryProcessor.processInternal(QueryProcessor.java:172)
> 	at org.apache.cassandra.db.SystemTable.updatePeerInfo(SystemTable.java:258)
> 	at org.apache.cassandra.service.StorageService.onChange(StorageService.java:1231)
> 	at org.apache.cassandra.service.StorageService.onJoin(StorageService.java:1948)
> 	at org.apache.cassandra.gms.Gossiper.handleMajorStateChange(Gossiper.java:823)
> 	at org.apache.cassandra.gms.Gossiper.applyStateLocally(Gossiper.java:901)
> 	at org.apache.cassandra.gms.GossipDigestAck2VerbHandler.doVerb(GossipDigestAck2VerbHandler.java:50)
> Possibilities:
> - Changing partitioner to BOP (or something else) fails while loading schema_keyspaces.
So, it does not look like an option.
> - One possibility is that getToken of OPP can return hex value if it fails to encode
bytes to UTF-8 instead of throwing error. By this system tables seem to be working fine with
OPP.
> - Or Completely remove OPP from code base & configuration files. Mark clearly that
OPP is no longer supported in upgrade instructions.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message