Coda File System

Re: Inconsistent files that coda report as not inconsistent

From: Patrick Walsh <pwalsh_at_esoft.com>
Date: Thu, 14 Jul 2005 08:38:38 -0600
On Wed, 2005-07-13 at 17:27 -0600, Patrick Walsh wrote:
> > > 	The script that gets run regularly is some variation of the following.
> > > It downloads virus updates to a temp directory and moves it to coda:
> > > 
> > > /bin/rm -rf $codadir/update.last
> > > /bin/mv $codadir/update $codadir/update.last
> > > /bin/mv $tempdir/$subdir $codadir/update

	I did a fresh download of all of the directory tree, deleted the update
and update.last targets in coda, and tried doing the mv command above
(the third command) by hand.  After the move there weren't any
conflicts, but the mv command returned some funny error messages.  The
bulk of the messages were reporting problems with changing the
permissions, which I know I can ignore:

/bin/mv: preserving ownership for `/coda/.../update': Permission denied

But towards the end of the mv operation I saw a few errors like this:

/bin/mv: cannot create regular file
`/coda/.../update/remupd/@7f000001.00000c94.00009927_at_director': Invalid
argument

	I have tried checking to see if these mystery files exist, but it
doesn't seem they do:
# cfs getpath 7f000001.00000c94.00009927_at_director
VIOC_GETPATH: No such file or directory

	During the move command, these console messages appeared:

17:28:31 Volume /httpd busy, waiting
17:28:53 Reintegrate: /httpd, 1/1 records, result = SUCCESS
17:28:59 Reintegrate: /httpd, 100/1365 records, result = SUCCESS
17:29:06 Reintegrate: /httpd, 100/1265 records, result = SUCCESS
17:29:13 Reintegrate: /httpd, 100/1165 records, result = SUCCESS
17:29:19 Reintegrate: /httpd, 100/1065 records, result = SUCCESS
17:29:25 Reintegrate: /httpd, 100/965 records, result = SUCCESS
17:29:31 Reintegrate: /httpd, 100/865 records, result = SUCCESS
17:29:37 Reintegrate: /httpd, 100/765 records, result = SUCCESS
17:29:38 volume /httpd CML is busy, skip checkpoint!

17:29:45 Reintegrate: /httpd, 100/665 records, result = SUCCESS
17:29:56 Reintegrate: /httpd, 100/565 records, result = SUCCESS
17:30:09 Reintegrate: /httpd, 100/465 records, result = SUCCESS
17:30:20 Reintegrate: /httpd, 100/365 records, result = SUCCESS
17:30:27 Reintegrate: /httpd, 100/265 records, result = SUCCESS
17:30:34 Reintegrate: /httpd, 100/165 records, result = SUCCESS
17:30:38 Reintegrate: /httpd, 65/65 records, result = SUCCESS

	I'm giving these details because I want to know if these log messages
are ignorable.  And also because I have a suspicion that things will
break at the next step (renaming the target directory and then copying a
new tree over to the old name).  So here are some excerpts from
venus.log:

	Lots of messages like this:

[ I(51) : 0041 : 17:29:25 ] k_Replace: VenusFid
(5086c448.7f000001.fffffffe.82f5f) with VenusFid
(5086c448.7f000001.9ec.d63d) in mini-cache

	Several exchanges like this:

[ I(51) : 0041 : 17:29:26 ] ClientModifyLog::COP1: (replica 1) 0 stale
dirs
[ I(51) : 0041 : 17:29:26 ] ClientModifyLog::COP1: (/httpd), 8712 bytes,
returns 0, index = 100

[ T(01) : 50434 : 17:29:28 ] BeginRvmFlush (1, 149092, S)
[ T(01) : 50434 : 17:29:28 ] EndRvmFlush

[ I(51) : 0041 : 17:29:31 ] *** Long Running (Multi)COP2: code = -2001,
elapsed
= 1242.0 ***
[ I(51) : 0041 : 17:29:31 ] ClientModifyLog::IncCommit: (/httpd)
[ I(51) : 0041 : 17:29:31 ] volent::IncReintegrate: committed
[ I(51) : 0041 : 17:29:31 ] IncReintegrate: (/httpd,-549) result =
SUCCESS, elapsed = 6045.7 (5.4, 1231.0, 4809.4)
[ I(51) : 0041 : 17:29:31 ]     new stats = [  32,   7.5,   766.7,   68,
16.3], [   0,   0.0,     0.0,    0,   0.0]
[ I(51) : 0041 : 17:29:31 ] ClientModifyLog::GetReintegrateable:
(/httpd, -550)
100 records, 2171 msec
[ I(51) : 0041 : 17:29:31 ] volent::IncReintegrate: (/httpd, -550) uid =
0

	And here's the excerpt from around the time that console reported
"volume /httpd CML is busy, skip checkpoint!":

[ I(51) : 0041 : 17:29:37 ] k_Replace: VenusFid
(5086c448.7f000001.fffffffe.82fa0) with VenusFid
(5086c448.7f000001.af0.d67e) in mini-cache
[ I(51) : 0041 : 17:29:37 ] k_Replace: returns 0
[ I(51) : 0041 : 17:29:37 ] ClientModifyLog::IncReallocFids: (/httpd)
[ I(51) : 0041 : 17:29:37 ] ClientModifyLog::IncThread: (/httpd)
[ I(51) : 0041 : 17:29:37 ] ClientModifyLog::IncPack: (/httpd)

[ T(01) : 50435 : 17:29:38 ] BeginRvmTruncate (1344, 372884, S)
[ T(01) : 50435 : 17:29:39 ] EndRvmTruncate

[ I(51) : 0041 : 17:29:39 ] *** Long Running (Multi)Reintegrate: code =
-2001, elapsed = 2207.4 ***
[ I(51) : 0041 : 17:29:39 ] ClientModifyLog::COP1: (replica 0) 0 stale
dirs

	I'm going to continue the process and see if any conflicts appear. I'm
controlling the environment by preventing other reads/writes to coda
while doing this.



-- 
Patrick Walsh
eSoft Incorporated
303.444.1600 x3350
http://www.esoft.com/

Received on 2005-07-14 10:57:42