Open terminalnode opened 4 months ago
please provide a repo link/zip file with repro steps. Out of curiosity for your "working variant" why would you mark your function as suspend if you are not executing any suspendable function or launching a coroutine inside ?
The working variant only has the suspend marker to keep the breaking changes as small as possible. It's not required at all here, but highlights that only adding the .await()
is enough to break it.
As for repo to reproduce, I'll see what I can do.
Library Version Tried on 7.1.1 and 7.1.4. Worked previously on 7.0.2.
Describe the bug
kotlinx.coroutines.core
has a functionkotlinx.coroutines.future.await
for converting CompletableFutures to coroutines. In previous versions of this library, callingawait()
on the output ofDataFetchingEnvironment::getValueFromDataLoader
was something we used extensively in our code, but now it causes all requests doing this to timeout.To Reproduce I found one part in our code where I can easily fix/break it with only this
await
differing between the two.This is the working variant, which is not using
await()
This is the broken variant which causes timeouts:
The only difference here is removal of
CompletableFuture
in the return type and addition of.await()
Expected behavior The two approaches should have the same effect.