help-cfengine
[Top][All Lists]
Advanced

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

Re: more cfagent during kickstart woes


From: Mark . Burgess
Subject: Re: more cfagent during kickstart woes
Date: Wed, 28 Jul 2004 12:20:04 +0200 (MEST)

Geir, takk for denne infoen. Det kan være nyttig å viet.

M

On 28 Jul, Geir Hauge wrote:
> On Tue, Jul 27, 2004 at 02:50:05PM -0600, Ed Brown wrote:
>> On Tue, 2004-07-27 at 13:44, Lars Damerow wrote:
>> 
>> > cfengine always runs like a champ outside of kickstart; I wonder what
>> > difference between a kickstart boot and a regular boot gives it such 
>> > trouble.
>> 
>> The zombie ifconfig process[es] created by the IPv6 lookup (cleaned up
>> when cfengine exits) have been brought up here before, but no traction
>> gained.  (
>> http://lists.gnu.org/archive/html/help-cfengine/2004-06/msg00013.html
>> ).  Our occasional problems with kickstart started at that time (when we
>> upgraded to 2.1.6, I think from 2.1.3), and like your debug trace, our
>> output always ended with the ifconfig call.  That's circumstantial
>> linkage, but it's all I've got.  The intermittent nature of the problem
>> and the segfaults made it hard to make a more detailed report.
> 
> Not sure how related this is, but I've encountered similar problems
> when doing a simple syntax error in a cfagent configuration file. Here's
> a simple configuration file to demonstrate:
> 
> -- ./test.cf --
> control:
>     somepath = ( /my/path )
>     AddInstallable = ( test_class )
> groups:
>     test_class = ( !IsNewerThan(/home/file1, $(somepath)/file2 ) )
> -- end ./test.cf --
> 
> The error here is that there is space within the IsNewerThan() macro.
> The correct line should be:
> 
>     test_class = ( !IsNewerThan(/home/file1,$(somepath)/file2) )
> 
> When trying to parse this file, the following happens:
> 
> # cfagent -p -f ./test.cf 
> cf:cfengine::./test.cf:5: Incomplete variable syntax or bracket mismatch 
> 
> and then it just hangs like this, with cfagent taking up 99% of cpu:
> 
> # ps -ef 
> [...]
> root     22641 16858 99 09:29 pts/2    00:00:35 cfagent -p -f ./test.cf
> root     22642 22641  0 09:29 pts/2    00:00:00 [ifconfig] <defunct>
> [...]
> 
> When running with cfagent -pdddd -f ./test.cf, the last lines it prints
> are:
> 
> cf:cfengine::./test.cf:5: Incomplete variable syntax or bracket mismatch 
> Scanning variable 
> GetMacroValue(main,)
> 
> which means that it calls the char *GetMacroValue(char *scope,char *name)
> function with the last argument as an empty string. Running the same
> command with the syntax error fixed, it prints
> GetMacroValue(main,somepath) there instead, so it seems to me that the
> problem is around there, and not with the ipv6 (in this case at least).
> 
> Hope this helps!
> 



~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Work: +47 22453272            Email:  Mark.Burgess@iu.hio.no
Fax : +47 22453205            WWW  :  http://www.iu.hio.no/~mark
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~





reply via email to

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