Date: Sun, 8 Oct 2000 12:21:37 -0700 (PDT) From: Matt Dillon <dillon@earth.backplane.com> To: Kirk McKusick <mckusick@mckusick.com> Cc: freebsd-stable@freebsd.org Subject: Weird (possibly softupdates related) data loss on fsck/reboot Message-ID: <200010081921.e98JLbn00668@earth.backplane.com>
next in thread | raw e-mail | index | archive | help
We had building maintainance that turned off power longer then the
UPS could handle and one of my machines went down.
When it came back up it ran fsck and came up with a whole lot of
"missing '.' in directory" (or something like that, I didn't record
the fsck output unfortunately), and "directory corrupt" errors.
It recovered around 128 files and four empty directories, all from
/usr/ports, which it had disconnected due to believing the governing
directories were corrupt. After the fsck the governing directories were
present in the filesystem but empty.
I looked at a recent 'dump' backup of /usr and restored it and the
files were present in the dump, so the 'dump' program had no problem
seeing them. I also looked at my cvsup logs and determined that
some of the files in question had been cvsup'd weeks before
the L0 dump I looked at, and that cvsup obviously saw the files in
the live filesystem every time it ran in the last week since it didn't
feel the need to update them.
I cvsup /usr/ports daily. /usr is mounted with softupdates on. There
was no filesystem activity at the time of the power failure. /usr on
this machine is a 2G filesystem on a SCSI partition (nothing fancy).
Very odd! I'm not sure what is going on, but since dump saw the files
correctly and since the files were visible in the live filesystem prior
to the power failure, I can only guess that 'fsck' somehow believed the
directories were corrupt when they weren't (or at least, not so corrupt
that dump would feel it had to blow away the whole directory!). I don't
think this is buffer-cache related since the raw device and the live
filesystem seemed to see a consistent view of the filesystem.
I'll try to reproduce the problem in a week or two (by taking a dd copy
of /usr and then taking the machine down hard). This is just a datapoint
in case other people have had similar problems.
-Matt
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-stable" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200010081921.e98JLbn00668>
