(Illustration by Gaich Muramatsu)
Hello On Tue, Sep 06, 2005 at 01:47:01PM -0400, Jan Harkes wrote: > > venus: refcounted.h:55: void RefCountedObject::PutRef(): Assertion > > `refcount > 0 > > ' failed. > > This is where we drop the reference count on some internal object and it > is already down to zero (or even negative). My guess is that this was > fixed in Coda-6.0.11, > > - Fix iterators to make sure we keep objects pinned down with a refcount > to prevent them from being pulled out when we yield (make an RPC2 call) > during the iteration. Okay, i've upgraded client to 6.0.11 and found a new bug:) If server listens on one interface and clients tries to connect using another one interface on server, the server tells to the client the hostname of correct interface. But if this interface isn't accessible from the client, venus will die with: ==== venus: refcounted.h:55: void RefCountedObject::PutRef(): Assertion `refcount > 0 ' failed. 10:43:11 Fatal Signal (6); pid 2296 becoming a zombie... 10:43:11 You may use gdb to attach to 2296 10:43:18 RecovTerminate: dirty shutdown (1 uncommitted transactions) ==== and after it venus will never start, failing during initialization. ==== 11:29:10 starting FSDB scan (4166, 100000) (25, 75, 4) 11:29:10 4 cache files in table (0 blocks) 11:29:10 4162 cache files on free-list venus: refcounted.h:55: void RefCountedObject::PutRef(): Assertion `refcount > 0 ' failed. 11:29:10 Fatal Signal (6); pid 2367 becoming a zombie... 11:29:10 You may use gdb to attach to 2367 11:29:23 RecovTerminate: dirty shutdown (1 uncommitted transactions) ==== so the only way to run venus is to reinitialize it. This bug is not a very big problem, but it would be great if sometimes it will be fixed ;) -- Denis ChapliginReceived on 2005-09-07 04:02:07