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
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.