在11.2.0.4 RAC环境下,oracle两个节点中的alert日志,都反复在提示ORA-21780:Maximum number of object durations exceeded.的提示
如下:
Sun Jun 28 11:20:46 2020
Errors in file /u01/app/oracle/diag/rdbms/orcl/orcl1/trace/orcl1_smon_9425.trc:
ORA-21780: Maximum number of object durations exceeded.
Sun Jun 28 11:20:56 2020
Errors in file /u01/app/oracle/diag/rdbms/orcl/orcl1/trace/orcl1_smon_9425.trc:
ORA-21780: Maximum number of object durations exceeded.
Sun Jun 28 11:21:06 2020
Errors in file /u01/app/oracle/diag/rdbms/orcl/orcl1/trace/orcl1_smon_9425.trc:
ORA-21780: Maximum number of object durations exceeded.
Sun Jun 28 11:21:16 2020
Errors in file /u01/app/oracle/diag/rdbms/orcl/orcl1/trace/orcl1_smon_9425.trc:
ORA-21780: Maximum number of object durations exceeded.
Sun Jun 28 11:21:26 2020
Errors in file /u01/app/oracle/diag/rdbms/orcl/orcl1/trace/orcl1_smon_9425.trc:
ORA-21780: Maximum number of object durations exceeded.
Sun Jun 28 11:21:36 2020
Errors in file /u01/app/oracle/diag/rdbms/orcl/orcl1/trace/orcl1_smon_9425.trc:
ORA-21780: Maximum number of object durations exceeded.
Sun Jun 28 11:21:46 2020
Errors in file /u01/app/oracle/diag/rdbms/orcl/orcl1/trace/orcl1_smon_9425.trc:
ORA-21780: Maximum number of object durations exceeded.
Sun Jun 28 11:21:57 2020
Errors in file /u01/app/oracle/diag/rdbms/orcl/orcl1/trace/orcl1_smon_9425.trc:
ORA-21780: Maximum number of object durations exceeded.
Errors in file /u01/app/oracle/diag/rdbms/orcl/orcl1/trace/orcl1_smon_9425.trc:
ORA-21780: Maximum number of object durations exceeded.
查看对应的orcl1_smon_9425.trc文件,发现SMON信息一直在进行drop transient type,截取的内容如下:
*** 2020-06-28 11:21:16.840
SMON: following errors trapped and ignored:
ORA-21780: Maximum number of object durations exceeded.
*** 2020-06-28 11:21:26.880
Drop transient type: SYSTPqGZA3UOVevjgU2TwEKz/Hg==
*** 2020-06-28 11:21:26.880
SMON: following errors trapped and ignored:
ORA-21780: Maximum number of object durations exceeded.
*** 2020-06-28 11:21:36.924
Drop transient type: SYSTPqGZA3UOVevjgU2TwEKz/Hg==
*** 2020-06-28 11:21:36.924
SMON: following errors trapped and ignored:
ORA-21780: Maximum number of object durations exceeded.
*** 2020-06-28 11:21:46.965
Drop transient type: SYSTPqGZA3UOVevjgU2TwEKz/Hg==
*** 2020-06-28 11:21:46.965
SMON: following errors trapped and ignored:
ORA-21780: Maximum number of object durations exceeded.
*** 2020-06-28 11:21:57.004
Drop transient type: SYSTPqGZA3UOVevjgU2TwEKz/Hg==
通过MOS中的查找,这一情况命中Bug 7485772,且只在RAC环境中出现,通过这篇文章,简单地记录类似案例的两种处理方法:
方法一:
可以通过SQL语句:
select o.* from obj$ o, type$ t
where o.oid$ = t.tvoid and
bitand(t.properties,8388608) = 8388608 and (sysdate-o.ctime) > 0.0007; 查询出对应的事物信息,然后可以删除该job
语句如下:
DROP TYPE "SYSTPqGZA3UOVevjgU2TwEKz/Hg==" FORCE;
方法二:
可以通过设置事件22834来阻止SMON清除瞬态类型,如下所示。但是,这可能会导致瞬态类型增加。
操作步骤:
SQL> alter system set events '22834 trace name context forever, level 1';
System altered.
SQL> alter system set events '22834 trace name context off' ;
System altered.
|