rfh3273@galileo.rtn.ca.boeing.com (Dick Harrigill) (05/14/91)
From time to time I am experiencing a corruption of data files
written by TP 5 and/or 6. The files are declared to be a file
of a record type. I/O is done with write and read statements
directly into/from a variable of that record type. The record type
is 25 bytes long and the length of the file is typically 800-900
records (read into an array of that type).
I have a 99.99% success rate. The last .01%, however, is a killer.
The files are simply trashed, containing garbage. The problem is
seemingly random, and does not seem to be related to media or disk
type. I cannot identify a common denominator, but it is not related
to any disk caching program. The file is indeed is trashed, so the error
happens during the write, not read phase. The file is, however, the
right/expected length.
The writes are done with {$I-} (I/O error trapping off), but after
each write I check the IOResult for errors. The error trapping portion
of the code seems to work because obvious errors such as disk full or
write-protect are reported as expected.
Does anybody have a suggestion or comment about what may be happening?
Related question: Is there a good way to do verification during a write?
--
Dick Harrigill, an independent voice from: Boeing Commercial Airplanes
M/S 9R-49 PO BOX 3707 Renton Avionics/Flight Systems
Seattle, WA 91824 Computing Support
(206) 393-9539 rfh3273@galileo.rtn.ca.boeing.com