Answer: One of the problems with
pga_aggregate_target and pga_max_size
was that it never aborted runaway tasks and only served as
an upper "target" and not a form "limit". It is
important to have a firm limit on RAM usage and Oracle 12c
and beyond introduces pga_aggregate_limit for the
purpose of proper RAM sizing on Oracle servers.
The pga_aggregate_limit
now sets a firm limit on PGA usage (for sorting and hash
joins). Without pga_aggregate_limit, Oracle can exceed
the real amount of RAM, causing RAM buffer paging and RAC
node eviction errors.
In order to make pga_aggregate_limit as
confusing as possible, by default, the
pga_aggregate_limit parameter is set to the greatest
of:
1: 2 gigabytes
2: Double
the value of
pga_aggregate_limit value
3: 3
megabytes times the value of the processes
parameter.
However, it will not exceed 120% of the physical memory
size minus the total SGA size.
When using pga_aggregate_limit, whenever a process
exceeds the limit, sessions with the highest PGA usage (see
v$pgastat) are aborted until the bottleneck is
cleared.
pga_aggregate_limit and RAC
If the total PGA consumption on a server
reaches the
pga_aggregate_limit value, sessions consuming the most
memory will have their current calls terminated. If this
action does not reduce the total PGA consumption below the
limit, those sessions will be wholly terminated.
Database administrators running Oracle RAC
instances on nodes that do not have an abundance of physical
memory may want to configure the
pga_aggregate_limit
value so that
parallel operations do not consume too much memory leading
to swapping and slower performance.
However, you may want to implement the
pga_aggregate_limit
initialization parameter with a high degree of caution. If a
node fails and connections are now hitting a surviving
instance, the pga_aggregate_limit limit may be reached easily if not sized to
handle the additional workload.
|
|
|
Oracle Training from Don Burleson
The best on site
"Oracle
training classes" are just a phone call away! You can get personalized Oracle training by Donald Burleson, right at your shop!
|
|
|
|
|
Burleson is the American Team
Note:
This Oracle
documentation was created as a support and Oracle training reference for use by our
DBA performance tuning consulting professionals.
Feel free to ask questions on our
Oracle forum.
Verify
experience!
Anyone
considering using the services of an Oracle support expert should
independently investigate their credentials and experience, and not rely on
advertisements and self-proclaimed expertise. All legitimate Oracle experts
publish
their Oracle
qualifications.
Errata?
Oracle technology is changing and we
strive to update our BC Oracle support information. If you find an error
or have a suggestion for improving our content, we would appreciate your
feedback. Just
e-mail:
and include the URL for the page.
Copyright © 1996 - 2020
All rights reserved by
Burleson
Oracle ®
is the registered trademark of Oracle Corporation.
|
|