You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@calcite.apache.org by "Vladimir Sitnikov (Jira)" <ji...@apache.org> on 2020/10/11 21:43:00 UTC

[jira] [Updated] (CALCITE-4329) Bridge methods in enumerable adapter should be skipped when actual type is Object

     [ https://issues.apache.org/jira/browse/CALCITE-4329?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Vladimir Sitnikov updated CALCITE-4329:
---------------------------------------
    Summary: Bridge methods in enumerable adapter should be skipped when actual type is Object  (was: EnumerableRules#BRIDGE_METHODS should be skipped when actual type is Object)

> Bridge methods in enumerable adapter should be skipped when actual type is Object
> ---------------------------------------------------------------------------------
>
>                 Key: CALCITE-4329
>                 URL: https://issues.apache.org/jira/browse/CALCITE-4329
>             Project: Calcite
>          Issue Type: Improvement
>          Components: core
>    Affects Versions: 1.26.0
>            Reporter: Vladimir Sitnikov
>            Priority: Major
>
> Calcite generates bridge methods even when actual parameter types are {{Object}}, so the class becomes invalid.
> Sample:
> {code:java}
> Caused by: org.codehaus.janino.InternalCompilerException:
>  Two non-abstract methods 
> "public int Baz$11.compare(java.lang.Object, java.lang.Object)" 
> have the same parameter types, declaring type and return type
>     , org.apache.calcite.linq4j.JoinType.LEFT, new java.util.Comparator(){
>       public int compare(Object v0, Object v1) {
>         final int c;
>         c = org.apache.calcite.runtime.Utilities.compareNullsLast((Comparable) v0, (Comparable) v1);
>         if (c != 0) {
>           return c;
>         }
>         return 0;
>       }
>       public int compare(Object o0, Object o1) {
>         return this.compare(o0, o1);
>       }
>     }).
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)