Alert :- Active Session History (ASH) performed an emergency flush. This may mean that ASH i
undersized. If emergency flushes are a recurring issue, you may consider increasing ASH
size by setting the value of _ASH_SIZE to a sufficiently large value.
Currently, ASH size is 50331648 bytes.
Cause :- Suddenly increased load on the database , and more active sessions are established
because of this oracle unable to maintain active sessions information in ASH buffer
hence oracle perform ASH emergency flush for the time being fixing the issue internally.
During internal process oracle will not allowing to make SQLPLUS
connection (SQLPLUS connection may get hanged)
Solution :- If you are frequently gettting the same alert in alert log then consider the increasing the
size of ASH buffer using hidden parameter "_ASH_SIZE" reference MOS doc 1385872.1
I would suggest please concern with oracle support before going to change the values of
"_ASH_SIZE" hidden parameter
Query to check ASH size and total number of emergency flushes happened :
SQL> select total_size/1024/1024 as MB ,awr_flush_emergency_count from v$ash_info;
Hope this article help you.
=================== Thank you ============================