7/22 Opscode Code Review


#1

Merge:
CHEF-4248 - Expose timeout attribute on scm resource and associated providers
CHEF-1559 - Debian service provider does not modify the priorities of service
COOK-3360 - Multiple Memory Leaks in Application Cookbook
COOK-2355 - rsyslog recipe should support forwarding events to more than one server
COOK-3162 - Nagios with apache2 cannot be moved to port 8080
COOK-3111 - Add support for alternate users databag to Nagios cookbook
COOK-3268 - don’t hardcode DocumentRoot and cgi-bin locations in default_site

Other:
CHEF-2421 - execute other resources BEFORE main resource
Wontfix - Too difficult to implement, results attainable with LWRPs or HWRPs.
CHEF-3747 - Add ChefPackage resources
Wontfix - Need a longer term solution to this problem
COOK-3237 - Enable cookie-based persistence in a backend
Reopened - Remove indentation
COOK-3131 - RabbitMQ cluster logic uses Chef search to add nodes
Reopened - Why require hostsfile?
COOK-2906 - Powerdns geo backend support added
Reopened - Don’t want to use force_override
COOK-2384 - Add haproxy LWRP for multiple haproxy sites/configs
Reopened - Add the tests
COOK-2925 - chefspec coverage for nginx::default and nginx_site definitions
Reopened - Keep ruby 1.8 compatible hash syntax.
COOK-2963 - jenkins cookbook has foodcritic failure
Not a bug - Upstream bug.
COOK-3259 - Add and document additional logwatch configuration options as node attributes
Reopened - Leave the defaults how they are upstream unless greatness is possible.


Bryan McLellan | opscode | technical program manager, open source
© 206.607.7108 | (t) @btmspox | (b) http://blog.loftninjas.org


#2

Just wanted to raise the visibility of COOK-3360. This was a bug that
was causing an entire run_context to leak every time chef-client
converged when running daemonized, and rapidly would lead to chef
consuming >>1GB of RAM and beyond. It should affect everyone using the
2.x application cookbook. A version bump was made to 3.x for the
application cookbook since all the other application_* cookbooks needed
to be updated for an API change. The syntax for users should not have
changed at all from 2.x -> 3.x (and a major version bump was not done on
the application_ruby, etc cookbooks).

Chef 11.6.0 has also switched the default so that the process which is
daemonized is thin and forks off a process that does all the work of
converging the node which should mitigate similar memory leaks in the
future.

On 7/22/13 2:02 PM, Bryan McLellan wrote:

Merge:
CHEF-4248 - Expose timeout attribute on scm resource and associated providers
CHEF-1559 - Debian service provider does not modify the priorities of service
COOK-3360 - Multiple Memory Leaks in Application Cookbook
COOK-2355 - rsyslog recipe should support forwarding events to more than one server
COOK-3162 - Nagios with apache2 cannot be moved to port 8080
COOK-3111 - Add support for alternate users databag to Nagios cookbook
COOK-3268 - don’t hardcode DocumentRoot and cgi-bin locations in default_site

Other:
CHEF-2421 - execute other resources BEFORE main resource
Wontfix - Too difficult to implement, results attainable with LWRPs or HWRPs.
CHEF-3747 - Add ChefPackage resources
Wontfix - Need a longer term solution to this problem
COOK-3237 - Enable cookie-based persistence in a backend
Reopened - Remove indentation
COOK-3131 - RabbitMQ cluster logic uses Chef search to add nodes
Reopened - Why require hostsfile?
COOK-2906 - Powerdns geo backend support added
Reopened - Don’t want to use force_override
COOK-2384 - Add haproxy LWRP for multiple haproxy sites/configs
Reopened - Add the tests
COOK-2925 - chefspec coverage for nginx::default and nginx_site definitions
Reopened - Keep ruby 1.8 compatible hash syntax.
COOK-2963 - jenkins cookbook has foodcritic failure
Not a bug - Upstream bug.
COOK-3259 - Add and document additional logwatch configuration options as node attributes
Reopened - Leave the defaults how they are upstream unless greatness is possible.


Bryan McLellan | opscode | technical program manager, open source
© 206.607.7108 | (t) @btmspox | (b) http://blog.loftninjas.org


#3

i meant to send this to the chef list as well, but typo’d the address…

-------- Original Message --------
Subject: Application Cookbook Memory Leaks (was Re: [chef-dev] 7/22
Opscode Code Review)
Date: Fri, 26 Jul 2013 12:45:01 -0700
From: Lamont Granquist lamont@opscode.com
To: chef-dev@lists.opscode.com, chef@lists.opcode.com

Just wanted to raise the visibility of COOK-3360. This was a bug that
was causing an entire run_context to leak every time chef-client
converged when running daemonized, and rapidly would lead to chef
consuming >>1GB of RAM and beyond. It should affect everyone using the
2.x application cookbook. A version bump was made to 3.x for the
application cookbook since all the other application_* cookbooks needed
to be updated for an API change. The syntax for users should not have
changed at all from 2.x -> 3.x (and a major version bump was not done on
the application_ruby, etc cookbooks).

Chef 11.6.0 has also switched the default so that the process which is
daemonized is thin and forks off a process that does all the work of
converging the node which should mitigate similar memory leaks in the
future.

On 7/22/13 2:02 PM, Bryan McLellan wrote:

Merge:
CHEF-4248 - Expose timeout attribute on scm resource and associated providers
CHEF-1559 - Debian service provider does not modify the priorities of service
COOK-3360 - Multiple Memory Leaks in Application Cookbook
COOK-2355 - rsyslog recipe should support forwarding events to more than one server
COOK-3162 - Nagios with apache2 cannot be moved to port 8080
COOK-3111 - Add support for alternate users databag to Nagios cookbook
COOK-3268 - don’t hardcode DocumentRoot and cgi-bin locations in default_site

Other:
CHEF-2421 - execute other resources BEFORE main resource
Wontfix - Too difficult to implement, results attainable with LWRPs or HWRPs.
CHEF-3747 - Add ChefPackage resources
Wontfix - Need a longer term solution to this problem
COOK-3237 - Enable cookie-based persistence in a backend
Reopened - Remove indentation
COOK-3131 - RabbitMQ cluster logic uses Chef search to add nodes
Reopened - Why require hostsfile?
COOK-2906 - Powerdns geo backend support added
Reopened - Don’t want to use force_override
COOK-2384 - Add haproxy LWRP for multiple haproxy sites/configs
Reopened - Add the tests
COOK-2925 - chefspec coverage for nginx::default and nginx_site definitions
Reopened - Keep ruby 1.8 compatible hash syntax.
COOK-2963 - jenkins cookbook has foodcritic failure
Not a bug - Upstream bug.
COOK-3259 - Add and document additional logwatch configuration options as node attributes
Reopened - Leave the defaults how they are upstream unless greatness is possible.


Bryan McLellan | opscode | technical program manager, open source
© 206.607.7108 | (t) @btmspox | (b) http://blog.loftninjas.org