Coda File System

Re: ulocoda on OS X 10.6 - RVM_ENOT_MAPPED

From: Piotr Isajew <pki_at_ex.com.pl>
Date: Mon, 25 Feb 2013 14:58:46 +0100
On Mon, Feb 25, 2013 at 01:14:42PM +0100, u-codalist-9wcu_at_aetey.se wrote:

> > I now see something like:
> 
> > 12:30:23 Coda Venus, version 6.9.4
> > 12:30:23 /Users/pki/.ulocoda/LOG size is 3036172 bytes
> > 12:30:23 /Users/pki/.ulocoda/DATA size is 12144688 bytes
> > 12:30:23 Initializing RVM data...
> > 12:30:23 Recov_InitRDS: rds_zap_heap failed (RVM_ENOT_MAPPED)
> > 
> > Then venus dies and the process repeats in an infinite loop.
> 
> Without having any Mac at hand, as a shot in the dark:
> I wonder if it helps if you remove /Users/pki/.ulocoda/LOG before
> (re)running or while running venus-forever. Then venus is run
> with "-init" argument and is expected to recreate RVM. A stale
> file might prevents this.
> 
> (I wonder also if RVM has to be memory mapped differently depending on
> the OS version (just a guess), at a different address or with different
> mmap() flags. It shouldn't, but can.)
> 

Tried both approaches. Removing LOG and DATA files doesn't
help. venus just recreates them at next launch and still
complains about rds_zap_heap failure. 

I tried to set mapprivate=0 instead of 1, but that only changes
error code from RVM_ENOT_MAPPED to RVM_EINTERNAL and still dies.

Next, I've cleared MAP_FIXED from mmap flags in rvm (I found a 10
years old post that pointed this to be the problem in some
systems). It didn't help either.

Finally I set dontuservm=1 (yes, I know it's dangerous, I just
wanted to see what happens next) in venus.conf.

With that setting I first do:

$ terra-start

and get a lot of output like:

        TERM_PROGRAM Apple_Terminal
Serving Syscalls  on local socket at '/Users/pki/.ulocoda/ullib.socket'
<_MainThread(MainThread, started)> Initializing server thread Library server, serving socket /Users/pki/.ulocoda/ullib.socket, call handler = __main__.Syscallhandler
<ServerThread(Thread-2, initial)>

.....
<ServerThread(Thread-2, started 4313321472)> Running server
Thread-2


Next, in the other terminal I type:

$ venus-forever

and venus appears to finally start:

Date: Mon 02/25/2013

14:22:24 Coda Venus, version 6.9.4
14:22:24 Starting RealmDB scan
14:22:24 	Found 1 realms
14:22:24 starting VDB scan
14:22:24 	0 volume replicas
14:22:24 	0 replicated volumes
14:22:24 	0 CML entries allocated
14:22:24 	0 CML entries on free-list
14:22:24 starting FSDB scan (4166, 100000) (25, 75, 4)
14:22:24 	0 cache files in table (0 blocks)
14:22:24 	4166 cache files on free-list
14:22:24 starting HDB scan
14:22:24 	0 hdb entries in table
14:22:24 	0 hdb entries on free-list
14:22:24 Mariner: listening on tcp port enabled, disable with -noMarinerTcp
14:22:24 Kernel version ioctl failed.
14:22:24 Mounting root volume...
14:22:24 Venus starting...



However it seems that something more doesn't work here, because:

$ clog
username: pki_at_otwieracz.localnet
Password: 
Local login only, could not contact venus


$ ls /coda
NOT_REALLY_CODA


codacon appears to connect to venus, and after some time gives
messages like Begin/End DataWalk.

So I think I miss something simple here. Maybe one more program
should be started or some options are missing. It would probably
help if someone who have seen such configuration working could
share his setup, or review above steps.

RVM issue needs probably more time to be resolved, so before
going deeper into it I would like to make sure that it's the only
missing part.

Regards,

Piotr
Received on 2013-02-25 08:59:00