Issue #4570 has been updated by James Turnbull. Status changed from Available In Testing Branch to Closed
---------------------------------------- Bug #4570: Race conditions when serializing objects to YAML https://projects.puppetlabs.com/issues/4570 Author: Paul Berry Status: Closed Priority: Normal Assignee: Jesse Wolfe Category: Target version: Affected Puppet version: Keywords: Branch: http://github.com/reductivelabs/puppet/tree/next The ZAML class (which Puppet uses to serialize objects to YAML) keeps track of the mapping from object id to label using a class variable. It also uses a class variable to keep track of which label to emit next (so as to guarantee uniqueness). This creates at least two race conditions: 1. If one thread starts serializing objects while a second thread is in the process of performing serialization, the first thread will clear the variables being used by the second, causing the second thread to output non-unique labels and to possibly emit duplicate objects when it should emit back-references. 2. If one thread attempts to serialize an object that a second thread has already serialized, the first thread will emit a back-reference when it should have emitted the full object. Both of these race conditions could result in ill-formed or incorrect YAML generation. -- You have received this notification because you have either subscribed to it, or are involved in it. To change your notification preferences, please click here: http://projects.puppetlabs.com/my/account -- You received this message because you are subscribed to the Google Groups "Puppet Bugs" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/puppet-bugs?hl=en.
