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

Jeremy Hanna commented on CASSANDRA-1242:
-----------------------------------------

Good call Erik - it needed some good feedback like this when people get bitten 
by the change.

> When loading an AbstractType that does not include an instance field, an 
> unhelpful exception is raised making diagnosis difficult
> ---------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-1242
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-1242
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 0.7
>            Reporter: Erik Onnen
>            Assignee: Erik Onnen
>             Fix For: 0.7
>
>         Attachments: CASSANDRA-1242.patch
>
>
> 0.7.0 changes the contract for creating AbstractTypes. A custom AbstractType 
> defined against 0.6.x will be incompatible and the error messaging around why 
> the comparator is invalid is obtuse and non-obvious. Specifically, when 
> porting a valid AbstractType from 0.6.x to 0.7 that does not include a public 
> static instance field, the thrift system_add_column_family call will throw an 
> exception whose only message is:
> InvalidRequestException(why:instance)
> No log messages are generated from the server as to the issue so the root 
> cause is non obvious to developers.
> I marked as Major because types defined against 0.6.x did not require an 
> "instance" field so at a minimum migration of AbstractTypes to 0.7 should 
> document the change in what is expected of AbstractTypes.
> Patch attached for better logging and to create a more helpful exception for 
> better communication to the client as to the issue.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to