I have some problems with Oracle 10.2.0.3 on Windows 2003 32-bit. We have PGA_AGGREGATE_TARGET set to 350 MB and a SGA of 2200 MB. Some of the sessions are shared server ones (which take memory from the large pool), and others are dedicated. Sometimes, when some big-fat report is running, the actual PGA allocated grows up to 550 MB and more. Then we are getting ora-4030
, because we hit the 3 GB limit of 32 bit windows.
In this cases I can see that one dedicated connection (the one running the big report) has allocated up to 280 MB PGA (this is, one session!). We are not using parallel things, if it matters at all.
I know PGA_AGGREGATE_TARGET is just a target, not a limit. But I wonder is there any way to limit how much PGA can a single session consume. I thought there is a rule stating no session can eat more than 10% than the total target, but this proved to be wrong.
Senior Database Expert