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: Geir Hauge
Subject: Re: more cfagent during kickstart woes
Date: Wed, 28 Jul 2004 09:52:20 +0200
User-agent: Mutt/1.4.2i

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!

-- 
Geir Hauge




reply via email to

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