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

JBR Errors notifier #28

Open
iromeo opened this issue Oct 16, 2018 · 2 comments
Open

JBR Errors notifier #28

iromeo opened this issue Oct 16, 2018 · 2 comments
Assignees

Comments

@iromeo
Copy link
Contributor

iromeo commented Oct 16, 2018

JBR browser supports plugin system and plugins shouldn't be able to crash browser in production code (e.g., #1329). Let's wrap all extension points usages in try {..} catch with reporting errors to the log. In order to make errors occurred in background detectable let's use red errors notifier component like in IntelliJ IDEA.

Suggested features:

  • Catch exceptions from all JBR extension point methods and report them to the notifier
  • Report tracks preprocessing and rendering exceptions.
  • Reporter should have minimal UI interface:
    • show occured exception
    • clear all errors action
    • optionally show error log in finder
@iromeo iromeo self-assigned this Oct 16, 2018
@iromeo
Copy link
Contributor Author

iromeo commented Dec 4, 2018

Collect OOM errors from #1346, #1387, #1351

@iromeo
Copy link
Contributor Author

iromeo commented Dec 4, 2018

Also could occur in Overlap info action

Exception in thread "Thread-67" java.lang.OutOfMemoryError
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
	at java.util.concurrent.ForkJoinTask.getThrowableException(ForkJoinTask.java:598)
	at java.util.concurrent.ForkJoinTask.reportException(ForkJoinTask.java:677)
	at java.util.concurrent.ForkJoinTask.invoke(ForkJoinTask.java:735)
	at java.util.stream.ReduceOps$ReduceOp.evaluateParallel(ReduceOps.java:714)
	at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:233)
	at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:499)
	at org.jetbrains.bio.browser.overlap.OverlapUIExtensionPoint.calcOverlapTable(OverlapUIExtensionPoint.kt:131)
	at org.jetbrains.bio.browser.overlap.OverlapUIExtensionPoint.access$calcOverlapTable(OverlapUIExtensionPoint.kt:34)
	at org.jetbrains.bio.browser.overlap.OverlapUIExtensionPoint$provideContextMenu$$inlined$apply$lambda$1$2.invoke(OverlapUIExtensionPoint.kt:85)
	at org.jetbrains.bio.browser.overlap.OverlapUIExtensionPoint$provideContextMenu$$inlined$apply$lambda$1$2.invoke(OverlapUIExtensionPoint.kt:34)
	at org.jetbrains.bio.browser.desktop.dialogs.ProgressDialog$display$block$1$1.run(ProgressDialog.kt:159)
	at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.OutOfMemoryError: Java heap space

@olegs olegs transferred this issue from another repository Mar 21, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant