bug-cfengine
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Definitely a bug in locking.


From: Baker, Darryl
Subject: Definitely a bug in locking.
Date: Fri, 18 Mar 2005 09:43:06 -0500

One of my co-workers dug in a bit deeper into our problems last night and
found:

Solaris 8 and 9 on SPARC using a few days old snap-shot. Berkeley DB=3.3 

I ran cfagent in all-out debug mode (-d2)  on asgqd545 and noticed from the
trace below. This was repeated for all of the 'copy' actions that should
have occurred. Note the 'IfElapsed' parameter to GetLock. Now note the third
line. I dug up the doc on IfElapsed, and discovered that it is intended to
assure that cfengine can't run off and insanely start copying everything at
full tilt. I set "IfElapsed = ( 0 )" in cf.main and the file copies went
right through. 

I have managed to prove that my C is hopelessly rusty, but I'm 99% certain
that the bug is somewhere in lines 212-257 of locks.c. I know that because
the variable 'operand' goes null in there somehow (!) and results in that
third line of debug not having what it should. (Line 212 sets the first
line, 257 sets the last, and 'operand' goes missing in there.... just
wrong...) 



ExpandVarstring(sysadm05.abh.vw.com)
ExpandVarstring(/var/cfengine/master/etc/sudoers)
ExpandVarstring(/usr/local/etc/sudoers)
Checking copy from sysadm05.abh.vw.com:/var/cfengine/master/etc/sudoers to
/usr/local/etc/sudoers
ExpandVarstring(sysadm05.abh.vw.com)
Server connection to sysadm05.abh.vw.com already open on 4
Authentic connection verified
cf_rstat(/var/cfengine/master/etc/sudoers)
GetCachedStatData(/var/cfengine/master/etc/sudoers)
Did not find in cache
Transaction Send[t 54][Packed text]
Attempting to send 62 bytes
SendSocketStream, sent 62
RecvSocketStream(8)
    (Concatenated 8 from stream)
Transaction Receive [t 74][]
RecvSocketStream(74)
    (Concatenated 74 from stream)
Mode = 288,0
OK: type=0
 mode=440
 lmode=0
 uid=0
 gid=0
 size=22418
 atime=1111154948
 mtime=1111103746 ino=281856 nlnk=1, dev=22282242
RecvSocketStream(8)
    (Concatenated 8 from stream)
Transaction Receive [t 3][]
RecvSocketStream(3)
    (Concatenated 3 from stream)
Linkbuffer: OK:
GetLock(copy,_var_cfengine_master_etc_sudoers__usr_local_etc_sudoers_sysadm0
5_abh_vw_com,time=1111156198), ExpireAfter=60, IfElapsed=1
GetLastLock()
cfengine:asgqd545: Nothing scheduled for copy. (0/1 minutes elapsed)

_____________________________________________________________________
Darryl Baker
gedas USA, Inc.
Operational Services Business Unit
3800 Hamlin Road
Auburn Hills, MI 48326
US
phone   +1-248-754-5341
fax     +1-248-754-6399
address@hidden
http://www.gedasusa.com
_____________________________________________________________________
 
>  
 <<Baker, Darryl.vcf>> 

Attachment: Baker, Darryl.vcf
Description: Binary data


reply via email to

[Prev in Thread] Current Thread [Next in Thread]