Coda File System

Re: venus wont start after powerfail

From: Jan Harkes <jaharkes_at_cs.cmu.edu>
Date: Wed, 7 Mar 2007 16:10:24 -0500
On Wed, Mar 07, 2007 at 06:27:55PM +0100, Enrico Weigelt wrote:
> after each powerfail (which happens from time to time on my notebook), 
> venus refuses to start again:

Interesting, how are you getting these power failures? bad battery?

> # 18:13:08 Coda Venus, version 6.0.15
> # 18:13:30 /usr/coda/LOG size 2690048
> # log_recover failed.
> # do_rvm_options failed
> # 18:13:30 Recov_InitRVM: RVM_INIT failed (RVM_EINTERNAL)

Your client dies when it tries to replay the logged operations. I
thought that even though we sync less frequently, that the log would
remain internally consistent. We might miss a couple of updates but it
would be a consistent snapshot of some valid state maybe 5 to 30 seconds
before the system abruptly died.

RVM doesn't have the best debug messages. I can see that it got past the
point where it successfully opened the log but fails while it tries to
replay any logged, but uncommitted operations.

One thing I notice is that RVM_EINTERNAL is returned when the timestamp
of the last write operation in the log is more recent than the current
system time. I wonder if your notebook has a clock that is running fast
(or a cmos clock that is slow) so that the time jumps back after a
system crash.

If you install rvmutl (from the rvm-tools package ) you could run

    # rvmutl
    > o /usr/coda/LOG
    > status

And that should tell us when the last write was committed so we can
compare that with the system time if the EINTERNAL error hits again.

Jan
Received on 2007-03-07 16:12:09