Mark, I just re-read the documentation on this (since I'm going back to fill in comments in my policy files) and noticed that the notes for dist say that it assigns "one generic class (always) and ONE additional class" (emphasis mine), e.g. my_dist and my_dist_10. That makes it sound like the result I saw where two such classes were defined (see below) was erroneous. Which is correct, the behavior or the documentation?
By the way, I remember in class when you were discussing this feature and I wondered when you'd ever want it. Now I know, so thanks for such a great feature! :) Thanks, Justin -----Original Message----- From: Mark Burgess [mailto:mark.burg...@iu.hio.no] Sent: Wednesday, March 10, 2010 12:25 PM To: Justin Lloyd Cc: help-cfengine@cfengine.org Subject: Re: Defining classes using "dist" I mean the reevaluation of dist classes. Don't open a ticket, I already reported this. Justin Lloyd wrote: > Which part, the re-evaluation of the dist class on each iteration or the > existence of multiple classes from the same base dist class? I'll open a > ticket based on your response. > > Thanks, > Justin > > -----Original Message----- > From: Mark Burgess [mailto:mark.burg...@iu.hio.no] > Sent: Wednesday, March 10, 2010 12:11 PM > To: Justin Lloyd > Cc: help-cfengine@cfengine.org > Subject: Re: Defining classes using "dist" > > > This sounds like a bug. > > Justin Lloyd wrote: >> This is just an FYI post, so feel free to ignore my rambling if you're >> not interested in some slightly deeper mechanics. :) >> >> So, I've learned something this morning. As I recall from reading, >> Cfengine iterates its agent ordering (vars, classes, etc.) up to three >> times. A close examination of verbose agent output shows this in lines >> like "files in bundle dg (1)", etc. >> >> In further diagnosing an issue I'm having, I noticed that the >> dist_percent class I created is evaluated during each such ordering >> iteration, rather than once for each invocation of cf-agent as I had >> originally thought. Thus, my promise that is conditional based upon > the >> existence of dist_percent_1 might be evaluated during the second >> iteration, where dist_percent_1 might be true for any or none of the >> three iterations of a given cf-agent invocation. So rather than my >> original statement that cf-agent runs 288 times per day (12 times per >> hour * 24 hours), the dist promise happens up to three times as often, >> meaning the number of times dist_percent_1 being defined is not 1% of >> 288 but 1% of 288*3, or 2.8*3 = 8-9 times per day. >> >> However, since the specific class promise I want evaluated only > happens >> during one of the three ordering iterations, the chances of >> percent_dist_1 occurring during the iteration when the desired promise >> would be evaluated would be 1/3rd of the total percent, bringing it > back >> down to the original 2-3 times per day. I only discuss this since it > is >> good to understand the actual mechanics of what is happening with dist >> promises. >> >> On a related note, I had another question in my mind answered by > verbose >> output during my testing: >> >> nova> ========================================================= >> nova> classes in bundle asset (3) >> nova> ========================================================= >> nova> >> nova> >> nova> + Private classes augmented: >> nova> + dist_percent_99 >> nova> + dist_percent >> nova> + dist_percent_1 >> nova> + fetched_asset_data >> nova> + dg_runtime_gold >> >> As you can see, dist classes are NOT mutually exclusive, as the _1 and >> _99 classes are both defined at the same time during this particular >> iteration of the asset bundle. I wasn't sure from the documentation >> whether this was the case, but this confirms it. The documentation > does >> state, however, that the base dist_percent class would always be >> defined. >> >> Justin >> >> >> -----Original Message----- >> From: help-cfengine-boun...@cfengine.org >> [mailto:help-cfengine-boun...@cfengine.org] On Behalf Of Justin Lloyd >> Sent: Wednesday, March 10, 2010 10:02 AM >> To: nwat...@symcor.com >> Cc: help-cfengine@cfengine.org; help-cfengine-boun...@cfengine.org >> Subject: RE: Evaluating a promise occasionally >> >> Now that I re-read the splayclass description in the morning when I'm >> fresh and not in the evening when I'm worn out, I actually understand >> it. For this specific case, however, it appears slightly too limited, >> since I want the class defined 2-3 times per day. Splayclass can only >> take "hourly" or "daily" as its second argument. >> >> At least now I know I can use it for other stuff in the future now > that >> I understand it. :) >> >> Thanks, >> Justin >> >> -----Original Message----- >> From: nwat...@symcor.com [mailto:nwat...@symcor.com] >> Sent: Wednesday, March 10, 2010 9:58 AM >> To: Justin Lloyd >> Cc: help-cfengine@cfengine.org; help-cfengine-boun...@cfengine.org >> Subject: RE: Evaluating a promise occasionally >> >> Splayclass? >> >> Sincerely, >> -- >> Neil Watson >> 416-673-3465 >> >> This electronic communication and any attachments may contain >> confidential and proprietary >> information of DigitalGlobe, Inc. If you are not the intended > recipient, >> or an agent or employee >> responsible for delivering this communication to the intended > recipient, >> or if you have received >> this communication in error, please do not print, copy, retransmit, >> disseminate or >> otherwise use the information. Please indicate to the sender that you >> have received this >> communication in error, and delete the copy you received. DigitalGlobe >> reserves the >> right to monitor any electronic communication sent or received by its >> employees, agents >> or representatives. >> >> _______________________________________________ >> Help-cfengine mailing list >> Help-cfengine@cfengine.org >> https://cfengine.org/mailman/listinfo/help-cfengine >> _______________________________________________ >> Help-cfengine mailing list >> Help-cfengine@cfengine.org >> https://cfengine.org/mailman/listinfo/help-cfengine > -- Mark Burgess ------------------------------------------------- Professor of Network and System Administration Oslo University College, Norway Personal Web: http://www.iu.hio.no/~mark Office Telf : +47 22453272 ------------------------------------------------- This electronic communication and any attachments may contain confidential and proprietary information of DigitalGlobe, Inc. If you are not the intended recipient, or an agent or employee responsible for delivering this communication to the intended recipient, or if you have received this communication in error, please do not print, copy, retransmit, disseminate or otherwise use the information. Please indicate to the sender that you have received this communication in error, and delete the copy you received. DigitalGlobe reserves the right to monitor any electronic communication sent or received by its employees, agents or representatives. _______________________________________________ Help-cfengine mailing list Help-cfengine@cfengine.org https://cfengine.org/mailman/listinfo/help-cfengine