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

Henrik Hegardt edited comment on RATIS-703 at 10/12/19 9:43 PM:
----------------------------------------------------------------

{code:java}
JavaUtils.attempt(() -> 
snapshotFiles.stream().anyMatch(RaftSnapshotBaseTest::exists), 10, ONE_SECOND, 
"snapshotFile.exist", LOG);{code}
The old code doesn't require that the supplier returns true to complete. Those 
statements should perhaps be wrapped in a assertX, since they are all, for now, 
in tests?

[Awaitability|https://github.com/awaitility/awaitility/] is a library for doing 
such things:
{code:java}
await().atMost(10, SECONDS).until(() -> 
snapshotFiles.stream().anyMatch(RaftSnapshotBaseTest::exists));{code}


was (Author: hheg):
JavaUtils.attempt(() -> 
snapshotFiles.stream().anyMatch(RaftSnapshotBaseTest::exists), 10, ONE_SECOND, 
"snapshotFile.exist", LOG);
The old code doesn't require that the supplier returns true to complete. Those 
statements should perhaps be wrapped in a assertX, since they are all, for now, 
in tests?

[Awaitability|https://github.com/awaitility/awaitility/] is a library for doing 
such things:
{code:java}
await().atMost(10, SECONDS).until(() -> 
snapshotFiles.stream().anyMatch(RaftSnapshotBaseTest::exists));{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, errors.png
>
>
> 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)

Reply via email to