Question: I am running Discoverer
and I am getting this error:
The
server is running low on virtual memory.
This can happen due to
insufficient disk space or heap space on the server.
Please
contact your Discoverer Administrator for assistance.
I am the Discoverer
administrator, and I have had none of the required training, and I
cannot read English well. Can you explain how to fix the low
memory error in plain English?
Answer:
First, check for bugs and notes on MOSC:
-
See MOSC note
135031.1 - When Exporting or Running A Large Query, Discoverer
Plus/Viewer Fails With "The Server is running low on Virtual
Memory..."
-
There is also a
bug on this, Bug no: 8437634 titled: The server is running low on
virtual memory.
If it is not a bug,
you need to add RAM. Michael Armstrong-Smith, author of the "Oracle
Discoverer Handbook", has these notes on the "The server is
running low on virtual memory" error:
"You are getting low on memory and
Discoverer is paging to disk. This will cause severe performance
issues.
On average you need to allot 85 Mb
per Discoverer Plus workbook and 15 Mb per Viewer workbook that
can be open concurrently.
To this you can add the memory for
the operating system and middle tier.
After you have done the math, this
number should not exceed 85% of your server's available memory.
Of course, if you have other
applications running on the server as well as Discoverer this will
also have to be taken into account and is something I strongly
discourage.
We may also need to increase the
allotted disk space but first of all can you check the physical
memory."
First, try adding
virtual memory, in two places, the server, and Discoverer.
Add RAM to a
Windows Discoverer server:
First, make sure that
you have at least 2 gig of RAM on the Discoverer workstation.
The absolute minimum RAM for Discoverer is 512 meg, and most
Discoverer workstations like having am minimum of 2 gig of RAM, with
most shops using 8 gigabytes of RAM . .
Start>Control Panel>System>Advanced>Performance
Settings>Advanced>Virtual Memory
CacheFlushPercentage = 50
MaxVirtualDiskMem = 4096000000
MaxVirtualHeapMem = 2048000000
Add RAM to
Discoverer:
Next, you need to add
RAM to Discoverer. This is done my increasing your
MaxVirtualDiskMem and MaxVirtualHeapMem sizes in your
$ORACLE_HOME/discoverer/util/pref.txt directory.