.ora-code.com

Links
Home
Oracle DBA Forum
Frequent Oracle Errors
TNS:could not resolve the connect identifier specified
Backtrace message unwound by exceptions
invalid identifier
PL/SQL compilation error
internal error
missing expression
table or view does not exist
end-of-file on communication channel
TNS:listener unknown in connect descriptor
insufficient privileges
PL/SQL: numeric or value error string
TNS:protocol adapter error
ORACLE not available
target host or object does not exist
invalid number
unable to allocate string bytes of shared memory
resource busy and acquire with NOWAIT specified
error occurred at recursive SQL level string
ORACLE initialization or shutdown in progress
archiver error. Connect internal only, until freed
snapshot too old
unable to extend temp segment by string in tablespace
Credential retrieval failed
missing or invalid option
invalid username/password; logon denied
unable to create INITIAL extent for segment
out of process memory when trying to allocate string bytes
shared memory realm does not exist
cannot insert NULL
TNS:unable to connect to destination
remote database not found'>ora-02019
exception encountered: core dump
inconsistent datatypes
no data found
TNS:operation timed out
PL/SQL: could not find program
existing state of packages has been discarded
maximum number of processes exceeded
error signaled in parallel query server
ORACLE instance terminated. Disconnection forced
TNS:packet writer failure
see ORA-12699
missing right parenthesis
name is already used by an existing object
cannot identify/lock data file
invalid file operation
quoted string not properly terminated
Restore and Recover Fuzzy datafiles

Restore and Recover Fuzzy datafiles

2006-05-25       - By Mark W. Farnham
Reply:     1     2     3     4     5     6     7     8  

All versions I'm aware of, though I haven't dumped the end of a 10g, and
maybe not a 9i, either.

If you create a datafile, you'll probably notice that the size on disk is at
least 1 datablock size larger than you asked for. The very last OS set of
blocks adding up to the database block size is the same as the very first
one, except for a few key values that get resynchronized at checkpoints if I
remember correctly. If I recall correctly one of the values in these blocks
is also whether the tablespace was in backup. Prior to being able to lie to
the database with a command and "end backup" (intended really not for copies
of datafiles, but the current datafiles which cannot be block fractured in
the case that the database crashes while in backup mode), you had to
manually adjust that ending shadow end of the file block or Oracle would
still know something was "wrong" with the file.

This is also the reason why you have to make raw partitions a little bigger
than the datafile you want to create there. I always thought it was funny
(strange, odd sense of funny) that Oracle gave you one block less than the
create size and took up one block more than the create size.

If someone remembers the precise details of which programs update these
blocks and under what conditions, and is free to disclose it, I'd enjoy
reading that as well.

In the case below, if DB writer is suspended for the split and the plex
split operation generates a clean copy (note that that engineering detail is
not necessarily required if the volume manager is only promising that the
plexes remaining associated with the volume are identical, and there is
possibly extra work flushing things at split time), then you're not going to
have fracture blocks.

You get fractured blocks when an OS utility copying OS sectors (usually 512
bytes) ends a particular read in the middle of an Oracle block and then the
database writer writes the Oracle block before the next OS read starts.


Regards,

mwf

-- --Original Message-- --
From: oracle-l-bounce@(protected) [mailto:oracle-l-bounce@(protected)]On
Behalf Of Andrey Kriushin
Sent: Thursday, May 25, 2006 10:05 AM
To: mwf@(protected)
Cc: Oracle-L Freelists
Subject: Re: Restore and Recover Fuzzy datafiles


Never heard of "ending block". What version it was then? Mark, could you,
please, clarify?

I've been in the situation with recovery of fuzzy file(s). The customer made
the backups by "split mirror" or something similar, and yes - DB was
suspended before splitting the mirror. Then files from the broken half of
the mirror were copied (not by RMAN) somewhere to form the "backup". However
BEGIN BACKUP was not performed before the split.
   Funny thing is that complete recovery was always working for them, so
the problem with fuzziness never arose. Unfortunately when the time for
incomplete recovery came, the customer had a big trouble. I've not noticed
any problems with the "ending blocks". Did I miss something important?
Server version was 9.2.0.4 if I remember correctly.
   AFAIK, after opening the database all its online datafiles in read write
tablespaces are in some sense fuzzy. It shows up as "stop scn:
0xffff.ffffffff" in file_hdrs dump (comes from the controlfile record for
the file), and also can be seen as KCVFHOFZ flag set in kcvfh.kcvfhsta field
in the file header block.
   There are also additional structs in the file header block with some
other meaning for "fuzzy", named as "Absolute fuzzy scn" and "Recovery fuzzy
scn". Probably somebody on the list could clarify their meaning?

TIA

- Andrey

Mark W. Farnham wrote:
Before you could tell the database to "end" backup, you also had to patch
the beginning and ending blocks of the file (lie to Oracle) so that Oracle
did not consider the file to be "fuzzy," but I doubt you're working with a
vintage of the Oracle software that old. If you are, you'll need some kind
of binary block editor.

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft
-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns="http:
//www.w3.org/TR/REC-html40">

<head>
<meta http-equiv=Content-Type content="text/html; charset=koi8-r">
<meta name=ProgId content=Word.Document>
<meta name=Generator content="Microsoft Word 9">
<meta name=Originator content="Microsoft Word 9">
<link rel=File-List href="cid:filelist.xml@(protected)">
<!--[if gte mso 9]><xml>
<o:OfficeDocumentSettings>
 <o:DoNotRelyOnCSS/>
</o:OfficeDocumentSettings>
</xml><![endif]--><!--[if gte mso 9]><xml>
<w:WordDocument>
 <w:Zoom>0</w:Zoom>
 <w:DocumentKind>DocumentEmail</w:DocumentKind>
 <w:EnvelopeVis/>
</w:WordDocument>
</xml><![endif]-->
<style>
<!--
/* Font Definitions */
@(protected)
  {font-family:Tahoma;
  panose-1:2 11 6 4 3 5 4 4 2 4;
  mso-font-charset:0;
  mso-generic-font-family:swiss;
  mso-font-pitch:variable;
  mso-font-signature:1627421319 -2147483648 8 0 66047 0;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
  {mso-style-parent:"";
  margin:0in;
  margin-bottom:.0001pt;
  mso-pagination:widow-orphan;
  font-size:12.0pt;
  font-family:"Times New Roman";
  mso-fareast-font-family:"Times New Roman";
  color:black;}
p.MsoAutoSig, li.MsoAutoSig, div.MsoAutoSig
  {margin:0in;
  margin-bottom:.0001pt;
  mso-pagination:widow-orphan;
  font-size:12.0pt;
  font-family:"Times New Roman";
  mso-fareast-font-family:"Times New Roman";
  color:black;}
span.EmailStyle16
  {mso-style-type:personal;
  mso-ansi-font-size:10.0pt;
  mso-ascii-font-family:Arial;
  mso-hansi-font-family:Arial;
  mso-bidi-font-family:Arial;
  color:navy;}
span.EmailStyle17
  {mso-style-type:personal-reply;
  mso-ansi-font-size:10.0pt;
  mso-ascii-font-family:Arial;
  mso-hansi-font-family:Arial;
  mso-bidi-font-family:Arial;
  color:#993366;}
@(protected) Section1
  {size:8.5in 11.0in;
  margin:1.0in 1.25in 1.0in 1.25in;
  mso-header-margin:.5in;
  mso-footer-margin:.5in;
  mso-paper-source:0;}
div.Section1
  {page:Section1;}
-->
</style>
<!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1027"/>
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
 <o:idmap v:ext="edit" data="1"/>
</o:shapelayout></xml><![endif]-->
</head>

<body bgcolor=white lang=EN-US style='tab-interval:.5in'>

<div class=Section1>

<p class=MsoNormal><span class=EmailStyle17><font size=2 color="#993366"
face=Arial><span style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:
Arial'>All versions I&#8217;m aware of, though I haven&#8217;t dumped the end
of a 10g, and
maybe not a 9i, either.<o:p></o:p></span></font></span></p>

<p class=MsoNormal><span class=EmailStyle17><font size=2 color="#993366"
face=Arial><span style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:
Arial'><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></span></font><
/span></p>

<p class=MsoNormal><span class=EmailStyle17><font size=2 color="#993366"
face=Arial><span style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:
Arial'>If you create a datafile, you&#8217;ll probably notice that the size on
disk
is at least 1 datablock size larger than you asked for. The very last OS set of
blocks adding up to the database block size is the same as the very first one,
except for a few key values that get resynchronized at checkpoints if I
remember correctly. If I recall correctly one of the values in these blocks is
also whether the tablespace was in backup. Prior to being able to lie to the
database with a command and &#8220;end backup&#8221; (intended really not for
copies of
datafiles, but the current datafiles which cannot be block fractured in the
case that the database crashes while in backup mode), you had to manually
adjust that ending shadow end of the file block or Oracle would still know
something was &#8220;wrong&#8221; with the file.<o:p></o:p></span></font></span
></p>

<p class=MsoNormal><span class=EmailStyle17><font size=2 color="#993366"
face=Arial><span style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:
Arial'><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></span></font><
/span></p>

<p class=MsoNormal><span class=EmailStyle17><font size=2 color="#993366"
face=Arial><span style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:
Arial'>This is also the reason why you have to make raw partitions a little
bigger than the datafile you want to create there. I always thought it was
funny (strange, odd sense of funny) that Oracle gave you one block less than
the create size and took up one block more than the create size.<o:p></o:p><
/span></font></span></p>

<p class=MsoNormal><span class=EmailStyle17><font size=2 color="#993366"
face=Arial><span style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:
Arial'><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></span></font><
/span></p>

<p class=MsoNormal><span class=EmailStyle17><font size=2 color="#993366"
face=Arial><span style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:
Arial'>If someone remembers the precise details of which programs update these
blocks and under what conditions, and is free to disclose it, I&#8217;d enjoy
reading
that as well.<o:p></o:p></span></font></span></p>

<p class=MsoNormal><span class=EmailStyle17><font size=2 color="#993366"
face=Arial><span style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:
Arial'><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></span></font><
/span></p>

<p class=MsoNormal><span class=EmailStyle17><font size=2 color="#993366"
face=Arial><span style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:
Arial'>In the case below, if DB writer is suspended for the split and the plex
split operation generates a clean copy (note that that engineering detail is
not necessarily required if the volume manager is only promising that the
plexes remaining associated with the volume are identical, and there is
possibly extra work flushing things at split time), then you&#8217;re not going
to
have fracture blocks.<o:p></o:p></span></font></span></p>

<p class=MsoNormal><span class=EmailStyle17><font size=2 color="#993366"
face=Arial><span style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:
Arial'><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></span></font><
/span></p>

<p class=MsoNormal><span class=EmailStyle17><font size=2 color="#993366"
face=Arial><span style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:
Arial'>You get fractured blocks when an OS utility copying OS sectors (usually
512 bytes) ends a particular read in the middle of an Oracle block and then the
database writer writes the Oracle block before the next OS read starts.<o:p></o
:p></span></font></span></p>

<p class=MsoNormal><span class=EmailStyle17><font size=2 color="#993366"
face=Arial><span style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:
Arial'><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></span></font><
/span></p>

<p class=MsoNormal><span class=EmailStyle17><font size=2 color="#993366"
face=Arial><span style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:
Arial'><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></span></font><
/span></p>

<p class=MsoNormal><span class=EmailStyle17><font size=2 color="#993366"
face=Arial><span style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:
Arial'>Regards,<o:p></o:p></span></font></span></p>

<p class=MsoNormal><span class=EmailStyle17><font size=2 color="#993366"
face=Arial><span style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:
Arial'><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></span></font><
/span></p>

<p class=MsoNormal><span class=EmailStyle17><font size=2 color="#993366"
face=Arial><span style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:
Arial'>mwf<o:p></o:p></span></font></span></p>

<p class=MsoNormal><span class=EmailStyle17><font size=2 color="#993366"
face=Arial><span style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:
Arial'><![if !supportEmptyParas]>&nbsp;<![endif]><o:p></o:p></span></font><
/span></p>

<p class=MsoNormal style='margin-left:.5in'><font size=2 color=black
face=Tahoma><span style='font-size:10.0pt;font-family:Tahoma'>-- --Original
Message-- --<br>
<b><span style='font-weight:bold'>From:</span></b>
oracle-l-bounce@(protected) [mailto:oracle-l-bounce@(protected)]<b><span
style='font-weight:bold'>On Behalf Of </span></b>Andrey Kriushin<br>
<b><span style='font-weight:bold'>Sent:</span></b> Thursday, May 25, 2006 10:05
AM<br>
<b><span style='font-weight:bold'>To:</span></b> mwf@(protected)<br>
<b><span style='font-weight:bold'>Cc:</span></b> Oracle-L Freelists<br>
<b><span style='font-weight:bold'>Subject:</span></b> Re: Restore and Recover
Fuzzy datafiles</span></font></p>

<p class=MsoNormal style='margin-left:.5in'><font size=3 color=black
face="Times New Roman"><span style='font-size:12.0pt'><![if !supportEmptyParas]
>&nbsp;<![endif]><o:p></o:p></span></font></p>

<p class=MsoNormal style='margin-left:.5in'><font size=3 color=black
face="Times New Roman"><span style='font-size:12.0pt'><br>
Never heard of &quot;ending block&quot;. What version it was then? Mark, could
you, please, clarify?<br>
<br>
I've been in the situation with recovery of fuzzy file(s). The customer made
the backups by &quot;split mirror&quot; or something similar, and yes - DB was
suspended before splitting the mirror. Then files from the broken half of the
mirror were copied (not by RMAN) somewhere to form the &quot;backup&quot;.
However BEGIN BACKUP was not performed before the split. <br>
&nbsp;&nbsp;&nbsp; Funny thing is that complete recovery was always working for
them, so the problem with fuzziness never arose. Unfortunately when the time
for incomplete recovery came, the customer had a big trouble. I've not noticed
any problems with the &quot;ending blocks&quot;. Did I miss something
important? Server version was 9.2.0.4 if I remember correctly.<br>
&nbsp;&nbsp;&nbsp; AFAIK, after opening the database all its online datafiles
in read write tablespaces are in some sense fuzzy. It shows up as &quot;stop
scn: 0xffff.ffffffff&quot; in file_hdrs dump (comes from the controlfile record
for the file), and also can be seen as KCVFHOFZ flag set in kcvfh.kcvfhsta
field in the file header block.<br>
&nbsp;&nbsp;&nbsp; There are also additional structs in the file header block
with some other meaning for &quot;fuzzy&quot;, named as &quot;Absolute fuzzy
scn&quot; and &quot;Recovery fuzzy scn&quot;. Probably somebody on the list
could clarify their meaning?<br>
<br>
TIA<br>
<br>
- Andrey<br>
<br>
Mark W. Farnham wrote: <o:p></o:p></span></font></p>

<p class=MsoNormal style='mso-margin-top-alt:0in;margin-right:.5in;margin
-bottom:
0in;margin-left:1.0in;margin-bottom:.0001pt'><span class=EmailStyle16><u3:p><
/u3:p><font
size=2 color=navy face=Arial><span style='font-size:10.0pt;font-family:Arial'><
!--[if gte mso 9]><xml>
<u1:OfficeDocumentSettings>
 <u1:DoNotRelyOnCSS/>
</u1:OfficeDocumentSettings>
</xml><![endif]--><!--[if gte mso 9]><xml>
<u2:WordDocument>
 <u2:Zoom>0</u2:Zoom>
 <u2:DocumentKind>DocumentEmail</u2:DocumentKind>
 <u2:EnvelopeVis/>
</u2:WordDocument>
</xml><![endif]-->Before you could tell the database to &#8220;end&#8221;
backup, you also
had to patch the beginning and ending blocks of the file (lie to Oracle) so
that Oracle did not consider the file to be &#8220;fuzzy,&#8221; but I doubt
you&#8217;re working
with a vintage of the Oracle software that old. If you are, you&#8217;ll need
some
kind of binary block editor.<u3:p></u3:p></span></font></span><o:p></o:p></p>

</div>

<u3:p></u3:p>
</body>

</html>