Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Incomplete async stack traces #206

Open
mihai1voicescu opened this issue Feb 1, 2022 · 1 comment
Open

Incomplete async stack traces #206

mihai1voicescu opened this issue Feb 1, 2022 · 1 comment

Comments

@mihai1voicescu
Copy link

Motivation

Some errors have their stack traces incomplete, making them impossible to debug. Example:

 02-01 17:42:09.667  E  [6652/6652] AndroidRuntime FATAL EXCEPTION: main
 02-01 17:42:09.667  E  [6652/6652] AndroidRuntime Process: io.almer.remoteassistence, PID: 6652
 02-01 17:42:09.667  E  [6652/6652] AndroidRuntime io.rsocket.kotlin.RSocketError$ApplicationError: Request cancelled
 02-01 17:42:09.667  E  [6652/6652] AndroidRuntime 	at io.rsocket.kotlin.RSocketErrorKt.RSocketError(RSocketError.kt:68)
 02-01 17:42:09.667  E  [6652/6652] AndroidRuntime 	at io.rsocket.kotlin.frame.ErrorFrameKt.readError(ErrorFrame.kt:47)
 02-01 17:42:09.667  E  [6652/6652] AndroidRuntime 	at io.rsocket.kotlin.frame.FrameKt.readFrame(Frame.kt:71)
 02-01 17:42:09.667  E  [6652/6652] AndroidRuntime 	at io.rsocket.kotlin.internal.ConnectKt$connect$7.invokeSuspend(Connect.kt:90)
 02-01 17:42:09.667  E  [6652/6652] AndroidRuntime 	at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
 02-01 17:42:09.667  E  [6652/6652] AndroidRuntime 	at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
 02-01 17:42:09.667  E  [6652/6652] AndroidRuntime 	at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:571)
 02-01 17:42:09.667  E  [6652/6652] AndroidRuntime 	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:750)
 02-01 17:42:09.667  E  [6652/6652] AndroidRuntime 	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:678)
 02-01 17:42:09.667  E  [6652/6652] AndroidRuntime 	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)

This looks like an internal error and I have nothing to debug it with or no additional info...

Even wrapping all the requests in try catch does not help in catching this...

Desired solution

Having the actual call site would be great. Also being able to catch the errors seems necessary.

@olme04
Copy link
Contributor

olme04 commented Feb 2, 2022

Hey, if I understand correctly you stacktrace, there is an error with type io.rsocket.kotlin.RSocketError$ApplicationError thrown, and you catch it, right? Such an error says that on responder side (f.e. server) something failed and responder has sent Error frame. On current moment, there is only message of Throwable is transmitted via network.

Do you have access to responder side of code? Does it have full stacktrace there? Or may be you can tell me, in which situation (code reproducer) this happens?

@whyoleg whyoleg added this to the 0.16.0 milestone Oct 5, 2022
@whyoleg whyoleg modified the milestones: 0.17.0 - Lease and Resume support, configuration API rework, 0.16.0 - Transport API/Internals rework, QUIC, Netty Nov 24, 2022
@whyoleg whyoleg removed this from the 0.16.0 - Transport API/Internals rework, QUIC, Netty milestone May 3, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants