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

Transport Backpressure support #408

Closed
marandaneto opened this issue Apr 8, 2021 · 3 comments
Closed

Transport Backpressure support #408

marandaneto opened this issue Apr 8, 2021 · 3 comments

Comments

@marandaneto
Copy link
Contributor

marandaneto commented Apr 8, 2021

Similar to Java https://github.com/getsentry/sentry-java/blob/main/sentry/src/main/java/io/sentry/transport/QueuedThreadPoolExecutor.java

The idea is that events get queued up to X number and dropped if the limit gets exceeded, so we don't overload the app's main isolate if they capture events very fast in a tight loop.

@marandaneto
Copy link
Contributor Author

marandaneto commented May 12, 2022

We should do it to avoid issues when calling e.g. captureException in a tight loop, since it returns a Future and the throwable is not serializable, we cannot offload the event pipeline in a different Isolate, we could tho try to use a counter and bailout if the queue is exceeded.
Also, you cannot call MethodChannels in the main isolate.

@marandaneto
Copy link
Contributor Author

Consider doing #536 as well

@denrase
Copy link
Collaborator

denrase commented Mar 12, 2024

Closed by #1868

@denrase denrase closed this as completed Mar 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Archived in project
Development

No branches or pull requests

4 participants