Sorry about that. What I mean is this:
A -> [] -> B is not equivalent to A -> B since failures in A will not affect B. However, it would be equivalent to [A,B] which I am reading as A before B but not in an actual resource relationship. And, it makes sense that A -> [] and [] -> B would not be related since they have no obvious syntax relationship. Thanks, Trevor On Thu, Feb 25, 2016 at 6:12 PM, Henrik Lindberg < [email protected]> wrote: > On 25/02/16 23:50, Trevor Vaughan wrote: > >> I just want to make sure I'm reading this right. >> >> For the first scenario, noop means don't order anything, just do things >> in whatever order they happen. >> >> And the second scenario is: don't fail B if A fails (don't create a >> relationship), but do A before B >> >> Is this correct? >> >> > I have problems understanding what you mean by noop and fail here. > > The fundamental question is, does this expression define the order of A > and B? > > A -> [ ] -> B > > You can view it either as it defines the order [A, B], or that it does not > and their partial order is unaffected. > > If you like the answer to be [A, B], does it bother you that the following > is not the same thing: > > A -> [ ] > [ ] -> B > > As that would not order them - because [ ] here can be seen as either > first/last or "in the partial order that is defined elsewhere". > > Trying to make that define the order [A, B] is impossible since every > resource starts out with the partial order [[], R, []] (nothing before R, > nothing after R). > > - henrik > > > If it is, I favor the second scenario as the default as it is more >> intuitive to the 'ordered compile' of Puppet 3+. >> >> Thanks, >> >> Trevor >> >> On Thu, Feb 25, 2016 at 5:31 PM, Henrik Lindberg >> <[email protected] <mailto:[email protected]>> >> >> wrote: >> >> On 25/02/16 22:08, John Bollinger wrote: >> >> >> >> On Thursday, February 25, 2016 at 8:55:01 AM UTC-6, Trevor >> Vaughan wrote: >> >> Hmm..... >> >> I think, as long as it is documented, then whatever behavior >> is >> deterministic is fine. >> ' >> I think that there is value in the following resolutions: >> >> Notify['left'] -> [] -> Notify['right'] >> * Noop since there is nothing in [] >> >> Notify['left'] -> [] -> Notify['right'] >> Notify['left'] -> Notify['right'] >> * First == Noop >> * Second == Expected ordering >> >> >> >> I flip-flopped a bit on this. I started from the position that >> it would >> be inappropriate for >> >> | >> Notify['left']->$stuff ->Notify['right'] >> | >> >> or >> >> | >> Notify['left']->Stuff<||>->Notify['right'] >> | >> >> ever to fail to cause Notify['left'] to be applied before >> Notify['right'], as indeed it now does fail to do in the event >> that the >> stuff in the middle represents zero resources. My basis there >> was that >> it is counterintuitive for such expressions to not establish >> relative >> ordering of the two Notifys. >> >> Ultimately, however, that basis is completely subjective. >> Others might >> reasonably intuit that such an expression would have exactly the >> semantics it actually does have, which are roughly equivalent to >> those of >> >> | >> Notify['left']->$stuff >> $stuff ->Notify['right'] >> | >> >> . Upon reflection, this alternative is less magic. It falls out >> naturally from understanding that chain operators associate from >> left to >> right, and that each binary chain expression /evaluates to/ the >> value of >> its right-hand operand. That some people might find that behavior >> surprising is a consideration, but not a primary one for me. >> >> >> It depends on the operator if it is left or right associative and if >> it is cumulative. And also what the result of '(nothing) op >> (something)' results in. >> >> if >> (nothing) -> X >> X -> (nothing) >> >> both evaluate to X >> >> as in >> >> 0 + 1 >> 1 + 0 >> >> Then empty man in the middle would be a noop. >> >> If you consider the arrows to abstractly order a set of resources in >> an array which at the end of the chain defines the partial order of >> the resources it would be the same as doing array concatenation. >> >> i.e. >> [A] + [] + [B] = [A, B] >> >> So - it is all down to definition of the arrow operators; i.e. >> taste/most practical/least surprise. >> >> - henrik >> >> >> -- >> >> Visit my Blog "Puppet on the Edge" >> http://puppet-on-the-edge.blogspot.se/ >> >> -- >> You received this message because you are subscribed to the Google >> Groups "Puppet Developers" group. >> To unsubscribe from this group and stop receiving emails from it, >> send an email to [email protected] >> <mailto:puppet-dev%[email protected]>. >> To view this discussion on the web visit >> >> https://groups.google.com/d/msgid/puppet-dev/56CF80DD.7010200%40puppetlabs.com >> . >> >> For more options, visit https://groups.google.com/d/optout. >> >> >> >> >> -- >> Trevor Vaughan >> Vice President, Onyx Point, Inc >> (410) 541-6699 >> >> -- This account not approved for unencrypted proprietary information -- >> >> -- >> You received this message because you are subscribed to the Google >> Groups "Puppet Developers" group. >> To unsubscribe from this group and stop receiving emails from it, send >> an email to [email protected] >> <mailto:[email protected]>. >> To view this discussion on the web visit >> >> https://groups.google.com/d/msgid/puppet-dev/CANs%2BFoUmvhYvCOift0Hn8vAGPyO89TmnyLty2mcB4R47h1fB3g%40mail.gmail.com >> < >> https://groups.google.com/d/msgid/puppet-dev/CANs%2BFoUmvhYvCOift0Hn8vAGPyO89TmnyLty2mcB4R47h1fB3g%40mail.gmail.com?utm_medium=email&utm_source=footer >> >. >> For more options, visit https://groups.google.com/d/optout. >> > > > -- > > Visit my Blog "Puppet on the Edge" > http://puppet-on-the-edge.blogspot.se/ > > -- > You received this message because you are subscribed to the Google Groups > "Puppet Developers" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To view this discussion on the web visit > https://groups.google.com/d/msgid/puppet-dev/56CF8A4D.3070004%40puppetlabs.com > . > > For more options, visit https://groups.google.com/d/optout. > -- Trevor Vaughan Vice President, Onyx Point, Inc (410) 541-6699 -- This account not approved for unencrypted proprietary information -- -- You received this message because you are subscribed to the Google Groups "Puppet Developers" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-dev/CANs%2BFoXoXN%2BYzNDMNkRGWeHdM3o-EE-5qNAu%2B3P4WU%2BkuOdzZQ%40mail.gmail.com. For more options, visit https://groups.google.com/d/optout.
