This content has been marked as final. Show 6 replies
SQL Dev uses Java architecture which is very memory consuming.
Since you need to display all 300K records, use SQL Dev to export them on csv format.
Then the latest Excel should do the job for you.
You may be right but I think the better decision is to buy more RAM and I did just that.
Please report back whether it helps. My work desktop has 2 GB but also has some performance issues with SQL Developer, not only with large result sets but also those containing blob/clob columns with a lot of text. I might be mistaken, but I remember it working better in earlier versions. It just seems unresponsive in general. If I don't use it for a day or so (but leave it running), reopen the window, and right-click a database to connect, it takes 10 or 20 seconds for the context menu to appear.
Upgrading hardware can be a very satisfying experience, especially as it is almost always inexpensive relative to the value of your time. Virtual memory/paging on Windows/PC hardware is a huge disappointment, so more physical memory on Windows is a real panacea. With 64-bit O/S becoming more prevalent, laptops and PCs are commonly available with 8G memory.
That said, I suspect few users have a business case for viewing hundreds of thousands of rows through a graphical user interface.
Getting back to the point about java memory management, I want to put in a plug for the new Garbage-First Garbage Collector. It will be production in JDK 1.7, but may be accessed in JDK 1.6 u14 & up as an experimental option. The more recent the update revision, the better. Just add something like this to your sqldeveloper.conf file:
It does a much better job of actually freeing unused memory from the O/S perspective.
To read more about it: http://www.oracle.com/technetwork/java/javase/tech/g1-intro-jsp-135488.html
I will report back when I install the 2 additional GB of RAM in Monday.
It's interesting to note that when using the PL SQL Developer I don't experience such problems on 1GB RAM machine running the same queries.
I increased the amount of virtual memory from 1 to 3 GB. This solved the problem.