[
https://issues.apache.org/jira/browse/RATIS-703?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16946620#comment-16946620
]
Tsz-wo Sze commented on RATIS-703:
----------------------------------
> ... the compiler cannot decide if it should use the returning CheckedSupplier
> or the non-returning one in CheckedRunnable ...
In this example, it is still unambiguous. If the return value of
assertNotLeaderException is void, then it is CheckedRunnable. Otherwise,
assertNotLeaderException has a non-void return value, i.e. CheckedSupplier.
Could you try updating you JDK? Mine is
{code}
$java -version
java version "1.8.0_221"
Java(TM) SE Runtime Environment (build 1.8.0_221-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.221-b11, mixed mode)
{code}
> Intermittent ambiguous method reference
> ---------------------------------------
>
> Key: RATIS-703
> URL: https://issues.apache.org/jira/browse/RATIS-703
> Project: Ratis
> Issue Type: Bug
> Reporter: Henrik Hegardt
> Assignee: Henrik Hegardt
> Priority: Major
> Attachments: RATIS-703.00.patch
>
>
> I'm getting intermittent ambiguous method reference compilation errors. It
> seems like it's a real bug since the method is ambigious when the referenced
> generic types have been ereased. Though I'm not sure why this is not always
> failing, it should, but it's probably a bug in Javac. I'm running Eclipse and
> it consistently complains about it.
> Output from Maven:
> [ERROR]
> testRevertConfigurationChange(org.apache.ratis.server.simulation.TestRaftReconfigurationWithSimulatedRpc)
> Time elapsed: 0.108 s <<< ERROR!
> java.lang.Error:
> Unresolved compilation problems:
> The method attempt(CheckedSupplier<Boolean,RuntimeException>, int,
> TimeDuration, String, Logger) is ambiguous for the type JavaUtils
> The method attempt(CheckedSupplier<Boolean,RuntimeException>, int,
> TimeDuration, String, Logger) is ambiguous for the type JavaUtils
> [INFO] Running
> org.apache.ratis.server.simulation.TestServerRestartWithSimulatedRpc
> [ERROR] Tests run: 5, Failures: 0, Errors: 2, Skipped: 0, Time elapsed:
> 4.013 s <<< FAILURE! - in
> org.apache.ratis.server.simulation.TestServerRestartWithSimulatedRpc
> [ERROR]
> testRestartCommitIndex(org.apache.ratis.server.simulation.TestServerRestartWithSimulatedRpc)
> Time elapsed: 0.081 s <<< ERROR!
> java.lang.Error:
> Unresolved compilation problems:
> The method attempt(CheckedSupplier<Boolean,RuntimeException>, int,
> TimeDuration, String, Logger) is ambiguous for the type JavaUtils
> The method attempt(CheckedSupplier<Boolean,RuntimeException>, int,
> TimeDuration, String, Logger) is ambiguous for the type JavaUtils
> [ERROR]
> testRestartFollower(org.apache.ratis.server.simulation.TestServerRestartWithSimulatedRpc)
> Time elapsed: 0.074 s <<< ERROR!
> java.lang.Error:
> Unresolved compilation problem:
> The method attempt(CheckedSupplier<Boolean,RuntimeException>, int,
> TimeDuration, String, Logger) is ambiguous for the type JavaUtils
> A fix (but ugly) would just to be to re arrange the arguments.
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)