Issue #13575 has been updated by Pablo Fernandez.

We are using Scientific Linux, a RHEL5 derivate.

The time I calculated is closer to 1/4 seconds per service, but anyway, what I 
meant is that Service is much slower than OTHER classes. If you take, the 
second "slower" resource, File, it takes 0.4 seconds and I have a lot more 
files than services configured. Then it goes to even shorter times for other 
resources. In general, I would say Service is O(100) times slower than other 
resources.

And if you think about it, it just makes sure a process is not running, and 
does chkconfig to see that it's disabled. Is it slow because it has to check 
the process table for every service? Or is it chkconfig? I don't know, but 
there is probably a way to make the usage of this resource escalable.

Thanks,
Pablo

----------------------------------------
Feature #13575: class Service too slow
https://projects.puppetlabs.com/issues/13575#change-60076

Author: Pablo Fernandez
Status: Needs More Information
Priority: Normal
Assignee: Pablo Fernandez
Category: 
Target version: 
Affected Puppet version: 
Keywords: 
Branch: 


Hi,

I have just added to my testing environment 20 Services that I want to make 
sure they are not started, and suddenly the time puppet agent takes to run has 
multiplied. It went from 2.3 seconds to 6.8 (just the "service" section). The 
rest of the time spent on the other classes is negligible, compared to the 
Service class, if you take away the "config retrieval". 

So, I took away the module that ensures all those services are stopped (it just 
does a enable => false) and the time goes back to normal:

-    last_run: 1333379655                                                       
                                                   
-    service: 6.847941                                                          
                                                   
-    total: 9.38650103457641                                                    
                                                   
-    config_retrieval: 2.11831903457642                                         
                                                   
-    package: 0.020925                                                          
                                                   
-    filebucket: 0.000494                                                       
                                                   
-    notify: 0.004085                                                           
                                                   
-    file: 0.392612                                                             
                                                   
-    exec: 0.002125                                                             
                                                   
+    last_run: 1333379753                                                       
                                                   
+    service: 2.364656                                                          
                                                   
+    total: 4.94454407040405                                                    
                                                   
+    config_retrieval: 2.16072607040405                                         
                                                   
+    package: 0.201954                                                          
                                                   
+    filebucket: 0.000344                                                       
                                                   
+    notify: 0.003545                                                           
                                                   
+    file: 0.212003                                                             
                                                   
+    exec: 0.001316                                                             
                                                   

I really think something should be done to improve the performance of the 
Service class.

Thanks!
Pablo


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