联系:手机/微信(+86 17813235971) QQ(107644445)
作者:惜分飞©版权所有[未经本人同意,不得以任何形式转载,否则有进一步追究法律责任的权利.]
在alert日志中发现ORA-01595/ORA-01594错误
Sat May 12 21:54:17 2012 Errors in file /oracle/app/admin/prmdb/bdump/prmdb2_smon_483522.trc: ORA-01595: error freeing extent (2) of rollback segment (19)) ORA-01594: attempt to wrap into rollback segment (19) extent (2) which is being freed
分析trace文件
Oracle9i Enterprise Edition Release 9.2.0.8.0 - 64bit Production With the Partitioning, Real Application Clusters, OLAP and Oracle Data Mining options JServer Release 9.2.0.8.0 - Production ORACLE_HOME = /oracle/app/product/9.2.0 System name: AIX Node name: prmsvr2 Release: 3 Version: 5 Machine: 0008585FD600 Instance name: prmdb2 Redo thread mounted by this instance: 2 Oracle process number: 14 Unix process pid: 483522, image: oracle@prmsvr2 (SMON) *** 2011-05-03 15:28:47.858 *** SESSION ID:(17.1) 2011-05-03 15:28:47.843 *** 2011-05-03 15:28:47.858 SMON: Parallel transaction recovery tried *** 2011-07-11 17:13:52.028 SMON: Restarting fast_start parallel rollback *** 2011-07-11 17:28:39.705 SMON: Parallel transaction recovery tried *** 2012-05-12 21:54:17.246 --当前问题时间点 SMON: following errors trapped and ignored: ORA-01595: error freeing extent (2) of rollback segment (19)) ORA-01594: attempt to wrap into rollback segment (19) extent (2) which is being freed --通过trace文件,我们没有获得关于该错误的其他有用信息
查询MOS相关信息[280151.1]
出现该错误原因
This is a known problem and there is an Internal Bug:2181139 for this Issue. The error is signaled because smon is shrinking a rollback segment and this fails because we need an extent to store some rollback information. This is a failure message for the shrinking. Subsequently smon would succeed in doing that. --当smon在shrink rollback segment因为需要一个extent存放rollback
解决建议
Ignore these error messages. Normally adding more undo space should solve the problem, but if space is not correcting the problem, please file an SR for assistance. This error message logging is fixed in 10g. --忽略该错误或者升级到10g
With AUM Enabled ORA-01594 and ORA-01595 Found in the alert.log [ID 280151.1]
OERR: ORA 1594 “attempt to wrap into rollback segment (%s) extent (%s) which i [ID 18992.1]
Error: ORA 1594 Text: attempt to wrap into rollback segment (%s) extent (%s) which is being fr eed ------------------------------------------------------------------------------- Cause: Undo generated to free a rollback segment extent is attempting to write into the same extent due to small extents and/or too many extents to free Action: The rollback segment shrinking will be rollbacked by the system; increase the optimal size of the rollback segment. *** Important: The notes below are for experienced users - See Note:22080.1 Explanation: 1594 is reported when a rollback segment is being shrunk but there is not enough space in the current undo extent to complete the job. Shrinking uses whatever is available in the current extent in the rollback segment. If no more space is left and the extent you would move into is one that is being freed you will get 1594. This error is harmless. When you retry, chances are you will not get the same error again. Usually this is caused by running a transaction after a huge transaction commits. Because of the setting of OPTIMAL, a very large number of extents need to be deallocated all at once. One way to avoid this problem is to have larger extent size. Another way is to have a larger OPTIMAL setting, so that only a smaller number of extents will be removed at one time. SET TRANSACTION USE ROLLBACK SEGMENT is also a good idea for large jobs so you know which rollback segment they will use. Note: There are changes to the way SMON shrinks rollback segments in 7.2. It should try to shrink a small number of extents at a time.