[
https://issues.apache.org/jira/browse/THRIFT-2157?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14380777#comment-14380777
]
Iker Jimenez commented on THRIFT-2157:
--------------------------------------
Regarding compatibility, in Java there is no issue implementing new interfaces
in newer versions of a class, it has been done in the standard Java API
multiple times.
However, TBase defines 8 methods, of which for this use case only one of them
needs to have an implementation.
I don't know if we should try to provide an implementation for the other 7 or
just wait for the day there is a use case for them and let them throw an
UnsupportedOperationException instead.
> generated code would cause ClassCastException
> ---------------------------------------------
>
> Key: THRIFT-2157
> URL: https://issues.apache.org/jira/browse/THRIFT-2157
> Project: Thrift
> Issue Type: Bug
> Components: Java - Compiler
> Affects Versions: 0.9.1
> Reporter: Dave Brosius
> Priority: Trivial
>
> Looking at the thrift generated code for cassandra, i'm seeing
> msg = (org.apache.thrift.TBase)new
> org.apache.thrift.TApplicationException(org.apache.thrift.TApplicationException.INTERNAL_ERROR,
> e.getMessage());
> as seen here
> https://git-wip-us.apache.org/repos/asf?p=cassandra.git;a=blob;f=interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java;h=837acfc0e964249fd62720420e8f1f85d966f1a3;hb=8f202895ab9e17c3d6bd4965924fd5f1ffc27f94#l6095
> i don't see how TApplicationException can be cast to TBase, and so i'd expect
> a ClassCastException there.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)