Issue #4211 has been updated by Brice Figureau.

Markus Roberts wrote:
> We've fixed the overt bugs, but the performance implications (and perhaps 
> more subtle bugs) warrant further exploration of this code.

in current master (as of 91185c6c04dc2bb5659db8f7a7d23a41c4d308ea) when using 2 
clients hitting the same freshly started master (ie nothing parsed yet), one of 
the client gets an almost empty catalog, while the other gets the full catalog.

Both clients requests the same node catalog. 

This is 100% reproducible with puppet-test --fork 1 (my puppet-test version 
that asks for remote REST catalogs).

My gut feeling is that, both threads starts parsing the same set of manifests, 
but at one time one sets a flags saying that everything is parsed (while it is 
not), so the other thinks everything is ready but gets an incomplete AST. It 
looks like we need a critical section around individual manifests 
parsing/importing.

This is a minor annoyance (but still a bug), as it happens only when multiple 
thread tries to compile at the same time _and_ manifests have changed (ie we 
need to build a new AST).
----------------------------------------
Refactor #4211: Investigate the changes made in the type_loader extraction
http://projects.puppetlabs.com/issues/4211

Author: Markus Roberts
Status: Investigating
Priority: High
Assigned to: Markus Roberts
Category: threading
Target version: queued
Affected version: 2.6.0rc1
Branch: 


There were a number of structural changes made in the type_loader extraction; 
one of them caused multi-threaded loading to fail outright; the others ought to 
be examined in more detail.



-- 
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.

Reply via email to