Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Usenet -> c.d.o.server -> ORA-04031 error running 8.1.7.0.0 developer on Solaris and Win2k
My company produces a middle-tier app server that currently runs on
top of SQL Server and we're developing support for Oracle. We've been
running into problems with the ORA-04031 shared pool memory error.
Basically, if we run on either our Solaris or our Win2k install, the
shared pool grows and grows and eventually runs out of memory, giving
us the error.
Our middle tier fires off SQL queries to the Oracle instance through ADO. Some are performed quite frequently, every 10 seconds. We're not explicitly using any of the Oracle packages or stored procedures. It's just raw SQL.
I've read several of the other postings on this newsgroup about this
error. Many just advise creating a cron/scheduled job and running
"alter system flush shared_pool". However, this is a poor option to
tell our clients.
I've tried increasing the pool to as large as 50MB and still the memory eventually runs out.
I've seen that in past versions, there have been bugs that cause memory leaks with the shared pool. Can anyone tell me if this is the case with 8.1.7.0.0 on both Win2k and Solaris?
I've been looking at some of the v$ tables to get a better idea of
what is going on, but I'm a little green at interpreting the
information. I've already got a query to monitor the size of the pool
(using v$parameter and v$sgastat) from another posting. It seems that
the information in v$sqlarea might be useful. Can I apply the
information in "sharable_mem", "persistent_mem", "runtime_mem", and
"executions" to come to a conclusion as to why we're running out of
memory?
Since we're currently only running the development (free) version of 8i, we don't have a support contract, so I don't have any access to MetaLink.
Am I barking up the wrong tree? Can someone reccommend a book/resource?
TIA,
Tim
Received on Thu Jan 31 2002 - 16:44:51 CST