Re: Weird ORA-1555 error

  • From: "Laimis Nd" <dmarc-noreply@xxxxxxxxxxxxx> (Redacted sender "laimisnd" for DMARC)
  • To: "JC1706@xxxxxxx" <JC1706@xxxxxxx>, "MAdams@xxxxxxxxxx" <MAdams@xxxxxxxxxx>, Oracle L <oracle-l@xxxxxxxxxxxxx>
  • Date: Fri, 30 Sep 2016 11:33:54 +0000 (UTC)

ouch, this is a known issue, Oracle has(had) an alert on it. Check 
_ktb_debug_flags=8There is a patch too.

    On Thursday, September 29, 2016 9:22 PM, "CRISLER, JON" <JC1706@xxxxxxx> 

 #yiv1310825451 #yiv1310825451 -- _filtered #yiv1310825451 {panose-1:2 4 5 3 5 
4 6 3 2 4;} _filtered #yiv1310825451 {font-family:Calibri;panose-1:2 15 5 2 2 2 
4 3 2 4;} _filtered #yiv1310825451 {font-family:Tahoma;panose-1:2 11 6 4 3 5 4 
4 2 4;}#yiv1310825451 #yiv1310825451 p.yiv1310825451MsoNormal, #yiv1310825451 
li.yiv1310825451MsoNormal, #yiv1310825451 div.yiv1310825451MsoNormal 
{margin:0in;margin-bottom:.0001pt;font-size:11.0pt;}#yiv1310825451 a:link, 
#yiv1310825451 span.yiv1310825451MsoHyperlink 
{color:blue;text-decoration:underline;}#yiv1310825451 a:visited, #yiv1310825451 
{color:purple;text-decoration:underline;}#yiv1310825451 p 
p.yiv1310825451MsoAcetate, #yiv1310825451 li.yiv1310825451MsoAcetate, 
#yiv1310825451 div.yiv1310825451MsoAcetate 
span.yiv1310825451BalloonTextChar {}#yiv1310825451 
span.yiv1310825451EmailStyle20 {color:windowtext;}#yiv1310825451 
span.yiv1310825451EmailStyle21 {color:#1F497D;}#yiv1310825451 
span.yiv1310825451EmailStyle22 {color:#1F497D;}#yiv1310825451 
.yiv1310825451MsoChpDefault {font-size:10.0pt;} _filtered #yiv1310825451 
{margin:1.0in 1.0in 1.0in 1.0in;}#yiv1310825451 div.yiv1310825451WordSection1 
{}#yiv1310825451 I am not sure if this was mentioned, but is your DB part of a 
Dataguard setup ? And had you recently done a switchover and/or switchback ? 
There is a known bug (number escapes me) where the indexes become unusable on 
the new primary and the error thrown is ORA-1555.  Rebuilding the index 
bypasses the issue.  A patch fixes it.     From: oracle-l-bounce@xxxxxxxxxxxxx 
[mailto:oracle-l-bounce@xxxxxxxxxxxxx]On Behalf Of Matt Adams
Sent: Thursday, September 29, 2016 8:37 AM
To: Matt Adams <MAdams@xxxxxxxxxx>; Oracle L <oracle-l@xxxxxxxxxxxxx>
Subject: RE: Weird ORA-1555 error    Thank you to everyone for the suggestions. 
  Based on an e-mail that arrived outside the list, I did a little more 
checking.   The ORA-1555 errors only occurred when running statements that did 
index lookups or scans.   When a FULL hint was applied to the statements, the 
error went away.    Based on this, we did a rebuild on all indexes of the 4 
tables that were having this problem and it appears that our problem has gone 
away.   It would be nice to know exactly what caused the situation in the first 
place, but I won’t lose any sleep over not knowing.       Matt Adams “It will 
make sense when you stop thinking logically, and start thinking Oracle-ly”   -  
Ken Droppa          From:oracle-l-bounce@xxxxxxxxxxxxx 
[mailto:oracle-l-bounce@xxxxxxxxxxxxx]On Behalf Of Matt Adams
Sent: Wednesday, September 28, 2016 3:24 PM
To: Oracle L
Subject: Weird ORA-1555 error    I’ve seen ORA-1555 (snapshot too old) lots of 
times in the past and they always seemed to be caused by 1 of 2 scenarios.    
Either an image of a block needed by a long running query is not available 
because another session has modified and committed a change to the block and 
the ‘before modification’ image of the block is no longer available in the 
rollback segments.  (common)   Or it’s a delayed block cleanout issue where the 
ITL in the block header needs maintenance.  (uncommon, but not exceedingly 
rare)    I’m now getting an ORA-1555 error that doesn’t seem to fit either 
case.    This particular table is roughly 11 million rows in a database 10 
terrabytes in size and not terrible busy.   There’s 300 Gig of undo tablespace 
and UNDO_RETENTION is set for 40 hours.  (don’t ask why 40 hours.  I didn’t set 
it up that way and nobody seems to remember why it was set that way)    Running 
the following query returns an error in anywhere from 2 to 10 seconds.    SQL> 
select  count(*) from app_owner.type_history; select  count(*) from 
hri1_owner.type_history                                  * ERROR at line 1: 
ORA-01555: snapshot too old: rollback segment number 491 with name 
"_SYSSMU491_93190984$" too small    The error is repeatable, with the same 
rollback segment (number 491) listed every time.     Since I’m getting this 
error in sometimes as little as 2 seconds or so, the first scenario I described 
above doesn’t seem to apply.    Usually, the recommended action to eliminate 
problems with delayed block cleanout is to either gather stats on the table or 
do a ‘select * from table’ to force oracle to visit every block.    That 
doesn’t seem to be working here.  All attempts to analyze the table or select 
count(*) from the table get the same ORA-1555 error    This is v (EE) 
on solaris.    Searches on the web and metalink (yes, I still call it that) 
have proven fruitless so far.    Anybody have any thoughts on why this might be 
occurring? **** This communication may contain privileged and/or confidential 
information. If you are not the intended recipient, you are hereby notified 
that disclosing, copying, or distributing of the contents is strictly 
prohibited. If you have received this message in error, please contact the 
sender immediately and destroy any copies of this document. **** **** This 
communication may contain privileged and/or confidential information. If you 
are not the intended recipient, you are hereby notified that disclosing, 
copying, or distributing of the contents is strictly prohibited. If you have 
received this message in error, please contact the sender immediately and 
destroy any copies of this document. **** 


Other related posts: