Data Grid Rendering Thread vs Large Result Set Option: Which Approach Best Balances Memory Usage and Interactive Features?
0 reputation · 22 Jan 2020, 23:28 UTC
Goal
When executing queries that return more than 100,000 rows, Oracle SQL Developer’s Data Grid can leak memory due to retained references in its rendering thread. A documented fix in 21.2 sets this thread to daemon mode, reducing the leak. Alternatively, the Worksheet’s Large Result Set option streams rows, preventing the leak but disabling interactive features such as sorting and inline editing.
Constraints
Users need a reliable way to view large result sets without exhausting JVM memory, yet they also value the Data Grid’s interactive capabilities. The unresolved decision is whether future releases should default the rendering thread to daemon mode, potentially impacting long‑running queries that rely on non‑daemon cleanup.
Questions
- Will setting the Data Grid rendering thread to daemon by default interfere with cleanup for long‑running queries that depend on non‑daemon behavior?
- Should the Large Result Set option be automatically enabled for queries exceeding a certain row threshold to avoid memory leaks while preserving performance?
- Is there a documented method to stream large result sets yet retain interactive features like sorting and inline editing?