For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!
Hi, Is there going to be a new 2020 database template? The latest one available is from MAY2020. Thanks. Cheers, Mauricio
Since the OOME is in RandomAccessFile.writeBytes0(Native Method), the system must overall must be low on memory. In other words, the OOME doesn't seem to be due to lack of Java heap space and therefore something else (another process?) is filling memory.
However, just in case the error is misleading, you should ensure that your heap size is around 2X the size of the JE cache. You didn't say what heap size you're using.
--mark
Thanks, Greybird-Oracle.
Here's the memory read out when the exception occurred:
memory: 403 free, 870 max, 870 total
for freeMemory, maxMemory, totalMemory respectively.
So I think my heap is sufficiently large... I haven't found a way to track native memory usage/availability.
How is it possible that my process would be competing for memory with another process?
Are you implying that lowering my je cache size might help?
It seems that RandomAccessFile.writeBytes0(Native Method) is allocating memory *outside* the Java heap, and there isn't memory available there. So something else on your machine is using this memory. In this case the JE cache size is not relevant, since it only impacts what is used inside the Java heap.
You could try reducing your heap size or look at what else is running on the machine and how much memory is available. To start with, look at your heap size relative to the total RAM.