In case of an Out of Memory exception inside the Table Data Editor (while trying to display the rows from the opened table), an "java.lang.OutOfMemoryError: GC overhead limit exceeded" message is printed in the View Log window.
Trying this on a MySQL server, only the above entry is added in the View Log, no message dialog is shown.
Trying it on a MongoDB server, the above entry is added in the View Log, and additionally a possibly misleading error message is shown (see attached screenshot ads_out_of_memory_no_results_query.png).
After displaying a corresponding error message dialog in the above situations (and on other servers where this occurs), also a link to the online documentation should be provided as requested in issue #8287.
@funfun: Asif has already done this on other screens. Please speak with him so that the formatting and text is similar / the same.
I think this issue has two parts:
1. Make out of memory dialog display (with online doc link) consistent
2. Trap/catch out of memory conditions in Table Data Editor so that instead of printing "java.lang.OutOfMemoryError: GC overhead limit exceeded" in the log, we display the out of memory dialog
For 2, please elaborate on how to cause OutOfMemoryError to happen. I am not sure I understand "while trying to display the rows from the opened table".
I think this issue has two parts:
1. Make out of memory dialog display (with online doc link) consistent
2. Trap/catch out of memory conditions in Table Data Editor so that instead of printing "java.lang.OutOfMemoryError: GC overhead limit exceeded" in the log, we display the out of memory dialog
For 2, please elaborate on how to cause OutOfMemoryError to happen. I am not sure I understand "while trying to display the rows from the opened table".
I think we need to unify/merge COptionPane.showErrorMessage() and COptionPane.showMessageDialog() with COptionPane.showElegantErrorMessage()
I think we need to unify/merge COptionPane.showErrorMessage() and COptionPane.showMessageDialog() with COptionPane.showElegantErrorMessage()
Moved the low on memory error dialog to common code, UserMessageUtil.handleMemoryError.
Since we handle OutOfMemory error once it occurs, we cannot be sure that we will get in the thread we handle the exceptions, it can happen in any thread. Some case we may just see the error in the logs but no UI will be shown. I have created a separate issue #9369 to handle memory errors better in Aqua Data Studio.
Moved the low on memory error dialog to common code, UserMessageUtil.handleMemoryError.
Since we handle OutOfMemory error once it occurs, we cannot be sure that we will get in the thread we handle the exceptions, it can happen in any thread. Some case we may just see the error in the logs but no UI will be shown. I have created a separate issue #9369 to handle memory errors better in Aqua Data Studio.
Issue #8663 |
| Closed |
| Fixed |
| Resolved |
Completion |
| No due date |
| Fixed Build ADS 14.0.0-beta-28 |
| No time estimate |
2 issue links |
relates to #9369
Issue #9369Handle Low on Memory conditions better |
relates to #8287
Issue #8287In case of Out of Memory - Provide link to online memory config docs |
@funfun: Asif has already done this on other screens. Please speak with him so that the formatting and text is similar / the same.