You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@avro.apache.org by "Uma Maheswara Rao G (JIRA)" <ji...@apache.org> on 2011/08/30 21:13:41 UTC

[jira] [Commented] (AVRO-499) reflection does not handle interfaces with overloaded method names

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

Uma Maheswara Rao G commented on AVRO-499:
------------------------------------------

Hi Cutting,

We are have testfailures related to this HDFS.

-------------------------------------------------------------------------------
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 1.486 sec <<< FAILURE!
testWorkingDirectory(org.apache.hadoop.hdfs.TestDfsOverAvroRpc) Time elapsed: 1.424 sec <<< ERROR!
org.apache.avro.AvroTypeException: Two methods with same name: delete
at org.apache.avro.reflect.ReflectData.getProtocol(ReflectData.java:394)
at org.apache.avro.ipc.reflect.ReflectResponder.<init>(ReflectResponder.java:36)
at org.apache.hadoop.ipc.AvroRpcEngine.createResponder(AvroRpcEngine.java:189)
at org.apache.hadoop.ipc.AvroRpcEngine$TunnelResponder.<init>(AvroRpcEngine.java:196)
at org.apache.hadoop.ipc.AvroRpcEngine.getServer(AvroRpcEngine.java:232)

HDFS-2298.
 NameNodeProtocols will have overloaded APIs.

How to handle this now?

Thanks
Uma

> reflection does not handle interfaces with overloaded method names
> ------------------------------------------------------------------
>
>                 Key: AVRO-499
>                 URL: https://issues.apache.org/jira/browse/AVRO-499
>             Project: Avro
>          Issue Type: Bug
>          Components: java
>    Affects Versions: 1.3.2
>            Reporter: Doug Cutting
>            Assignee: Doug Cutting
>             Fix For: 1.3.3
>
>         Attachments: AVRO-499.patch
>
>
> Avro protocols only permit a single message with a given name, while Java interfaces may overload a single method name with several signatures.  The reflect implementation currently does not address this.  Reflection of an interface with overloaded method names randomly selects one of these and ignores the others.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira