Re: Corrupted data blocks

From: Lee Parsons <lparsons_at_eskimo.com>
Date: Wed, 29 Mar 1995 01:46:04 GMT
Message-ID: <D66I8t.I5s_at_eskimo.com>


Geoff Lau <glau_at_pcug.org.au> wrote:
>During the period that these errors accrued, we had two external SCSI
>devices connected to the alpha, and they caused a slow increase in the
>error counts.
>
>Oracle support stated that the corruption was in memory, but no memory
>errors were logged and the corruption persisted after a cold reboot,

How did they take Data Coruption errors taking place at the same time as reported SCSI errors AFTER the recent addition of additional SCSI devices, and conclude that the coruption was in core? Did I miss something?

Hmm. The car goes slow, my tires make a Wompity, Wompity, Wompity sound... My engine must have fallen out! :-}

>In my opinion the software has failed to handle the physical
>errors correctly - I would expect that in the case of an attempt to
>write to a dbs file failing, the associated tablespace should be taken
>offline. What do you think?

I thought that this is exactly what does happen. But Oracle has to be told that the write failed. If Oracle passes on the write to the SCSI chain and the corruption takes place after Oracle let goes of the data, How does the DB know a corruption occured?

Hmm. Maybe a better question is, "When we do async writes, we know that data exists in the buffer after the write() has returned. This data must be purged to disk at a later date by another process. How does this process confirm that the data send from the buffer was the same data written to disk and How could it inform a user process if a corruption occured?"

The only Datablock Coruption I have ever had (Not caused by Oracle itself) was caused by a SCSI cable (exsposed wires shorting against the cabinet, very ugly). We determined that the coruption was taking place only on writes and neither Unix nor Oracle knew about it until the next read. From this, I have always concluded that there is a point of risk after the write() that user proceses cant detect. True?

--
Regards,

Lee E. Parsons                  		
Systems Oracle DBA	 			lparsons_at_world.std.com
Received on Wed Mar 29 1995 - 03:46:04 CEST

Original text of this message