# Chef-server stops responding ever other request

**URL:** <https://discourse.chef.io/t/chef-server-stops-responding-ever-other-request/2896>\
**Category:** Chef Infra (archive)\
**Created:** [June 5, 2012, 12:54pm UTC](https://discourse.chef.io/t/chef-server-stops-responding-ever-other-request/2896 "2012-06-05T12:54:38Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![Stefan\_Wendler](https://avatars.discourse-cdn.com/v4/letter/s/43a26b/32.png) [@Stefan\_Wendler](https://discourse.chef.io/u/Stefan_Wendler)\
**Post date:** [June 5, 2012, 12:54pm UTC](https://discourse.chef.io/t/chef-server-stops-responding-ever-other-request/2896/1 "2012-06-05T12:54:38Z")

</div>

Hi List,

maybe you can help me wit this? I’ve set up a “chef playground” with a  
workstation, a server (+UI) and two clients. While everything works so far the  
chef-server is making huge problems. I currently have to restart it after  
every REST-call because it won’t react to anything afterwards (until  
restarted)

Example: I add a client (success) afterwards I try to add a cookbook (no  
response). Even a simple client connect is enough to stop it

according to ps and netstat the merb process is still running and listening to  
port 4000. And I can telnet to the port.

chef-server just hangs and is not responding to anything. Not even the gui.  
After restart it’s working again for one request.

chef-server is started like this:

```
/usr/local/bin/chef-server -d -e ${ENVIRONMENT}

```

where ENVIRONMENT is “production”

The “server.rb” is as follows  
---------------- server.rb -------------------  
log\_level :debug  
log\_location "/var/log/chef/chef\_server.log"  
ssl\_verify\_mode :verify\_none  
chef\_server\_url “[http://prodtest-slave:4000](http://prodtest-slave:4000)”

signing\_ca\_path "/var/chef/ca"  
couchdb\_database ‘chef’

cookbook\_path [“/var/chef/cookbooks”, “/var/chef/site-cookbooks”]

file\_cache\_path "/var/chef/cache"  
node\_path "/var/chef/nodes"  
openid\_store\_path "/var/chef/openid/store"  
openid\_cstore\_path "/var/chef/openid/cstore"  
search\_index\_path "/var/chef/search\_index"  
role\_path “/var/chef/roles”

validation\_client\_name "chef-validator"  
validation\_key "/etc/chef/validation.pem"  
client\_key "/etc/chef/client.pem"  
web\_ui\_key "/etc/chef/webui.pem"  
web\_ui\_client\_name “chef-webui”

web\_ui\_admin\_user\_name "admin"  
web\_ui\_admin\_default\_password “”

supportdir = "/srv/chef/support"  
solr\_jetty\_path File.join(supportdir, “solr”, “jetty”)  
solr\_data\_path File.join(supportdir, “solr”, “data”)  
solr\_home\_path File.join(supportdir, “solr”, “home”)  
solr\_heap\_size “256M”

user 'chef’  
group ‘chef’

umask 0022

node\_name ‘chef\_server’

Mixlib::Log::Formatter.show\_time = true  
---------------- end of server.rb -------------------

When I start it undaemonized it logs just this when it hangs:

------------------ logging ------------------  
merb : chef-server (api) : worker (port 4000) ~ Started request handling:  
2012-06-05 14:40:10 +0200  
merb : chef-server (api) : worker (port 4000) ~ Routed to:  
{“controller”=\>“nodes”, “action”=\>“show”, “id”=\>“prodtest-master”,  
“format”=\>nil}  
merb : chef-server (api) : worker (port 4000) ~ Params:  
{“controller”=\>“nodes”, “action”=\>“show”, “id”=\>“prodtest-master”,  
“format”=\>nil}  
merb : chef-server (api) : worker (port 4000) ~  
{:before\_filters\_time=\>0.024005771, :after\_filters\_time=\>1.1935e-05,  
:action\_time=\>0.043984018, :dispatch\_time=\>0.044698021}  
merb : chef-server (api) : worker (port 4000) ~

```
  ConstrainVector: borrow[1] 0, delta 0

```

ConstrainV ector: current[0] -1, best\_val -1  
ConstrainVector: borrow[2] 0, delta [0…10]  
ConstrainV ector: current[1] [-10…0], best\_val -10  
ConstrainVector: borrow[3] 0, delta 0  
ConstrainV ector: current[2] 0, best\_val 0  
ConstrainVector: borrow[4] 0, delta [0…1]  
ConstrainV ector: current[3] [0…1], best\_val 0  
ConstrainVector: borrow[5] 0, delta [0…1]  
ConstrainV ector: current[4] [0…1], best\_val 0  
dep\_selector solve: SOLVED 2 packages, 1 constraints, Time: 1.764ms Stats: 1  
steps, 10970 bytes, 8 props, 3 nodes, 2 depth  
merb : chef-server (api) : worker (port 4000) ~ Started request handling:  
2012-06-05 14:40:10 +0200  
merb : chef-server (api) : worker (port 4000) ~ Routed to:  
{“run\_list”=\>[“getting-started”], “controller”=\>“environments”,  
“action”=\>“cookbook\_versions\_for\_run\_list”, “environment\_id”=\>"\_default"}  
merb : chef-server (api) : worker (port 4000) ~ Params:  
{“run\_list”=\>[“getting-started”], “controller”=\>“environments”,  
“action”=\>“cookbook\_versions\_for\_run\_list”, “environment\_id”=\>"\_default"}  
merb : chef-server (api) : worker (port 4000) ~  
{:before\_filters\_time=\>0.016346418, :after\_filters\_time=\>9.857e-06,  
:action\_time=\>0.077166217, :dispatch\_time=\>0.077611369}  
merb : chef-server (api) : worker (port 4000) ~

~ Qrack::Queue#publish will be removed in Bunny 0.8. Use direct\_exchange =  
bunny.exchange(’’); direct\_exchange.publish(‘message’, key: [queue.name](http://queue.name)) if you  
want to publish directly to one given queue. For more informations see  
[https://github.com/ruby-amqp/bunny/issues/15](https://github.com/ruby-amqp/bunny/issues/15) and for more theoretical  
explanation check [http://bit.ly/nOF1CK](http://bit.ly/nOF1CK)

------------------ end of logging ------------------

Version of chef is 0.10.10"

Thx alot for your help,  
Stefan

---

<div class="post-metadata">

**Author:** ![Stefan\_Wendler](https://avatars.discourse-cdn.com/v4/letter/s/43a26b/32.png) [@Stefan\_Wendler](https://discourse.chef.io/u/Stefan_Wendler)\
**Post date:** [June 11, 2012, 7:11am UTC](https://discourse.chef.io/t/chef-server-stops-responding-ever-other-request/2896/2 "2012-06-11T07:11:24Z")

</div>

bump

----- Ursprüngliche Mail -----  
Von: “Stefan Wendler” [stefan.wendler@tngtech.com](mailto:stefan.wendler@tngtech.com)  
An: [chef@lists.opscode.com](mailto:chef@lists.opscode.com)  
Gesendet: Dienstag, 5. Juni 2012 14:54:38  
Betreff: [chef] chef-server stops responding ever other request

Hi List,

maybe you can help me wit this? I’ve set up a “chef playground” with a  
workstation, a server (+UI) and two clients. While everything works so far the  
chef-server is making huge problems. I currently have to restart it after  
every REST-call because it won’t react to anything afterwards (until  
restarted)

Example: I add a client (success) afterwards I try to add a cookbook (no  
response). Even a simple client connect is enough to stop it

according to ps and netstat the merb process is still running and listening to  
port 4000. And I can telnet to the port.

chef-server just hangs and is not responding to anything. Not even the gui.  
After restart it’s working again for one request.

chef-server is started like this:

```
/usr/local/bin/chef-server -d -e ${ENVIRONMENT}

```

where ENVIRONMENT is “production”

The “server.rb” is as follows  
---------------- server.rb -------------------  
log\_level :debug  
log\_location "/var/log/chef/chef\_server.log"  
ssl\_verify\_mode :verify\_none  
chef\_server\_url “[http://prodtest-slave:4000](http://prodtest-slave:4000)”

signing\_ca\_path "/var/chef/ca"  
couchdb\_database ‘chef’

cookbook\_path [“/var/chef/cookbooks”, “/var/chef/site-cookbooks”]

file\_cache\_path "/var/chef/cache"  
node\_path "/var/chef/nodes"  
openid\_store\_path "/var/chef/openid/store"  
openid\_cstore\_path "/var/chef/openid/cstore"  
search\_index\_path "/var/chef/search\_index"  
role\_path “/var/chef/roles”

validation\_client\_name "chef-validator"  
validation\_key "/etc/chef/validation.pem"  
client\_key "/etc/chef/client.pem"  
web\_ui\_key "/etc/chef/webui.pem"  
web\_ui\_client\_name “chef-webui”

web\_ui\_admin\_user\_name "admin"  
web\_ui\_admin\_default\_password “”

supportdir = "/srv/chef/support"  
solr\_jetty\_path File.join(supportdir, “solr”, “jetty”)  
solr\_data\_path File.join(supportdir, “solr”, “data”)  
solr\_home\_path File.join(supportdir, “solr”, “home”)  
solr\_heap\_size “256M”

user 'chef’  
group ‘chef’

umask 0022

node\_name ‘chef\_server’

Mixlib::Log::Formatter.show\_time = true  
---------------- end of server.rb -------------------

When I start it undaemonized it logs just this when it hangs:

------------------ logging ------------------  
merb : chef-server (api) : worker (port 4000) ~ Started request handling:  
2012-06-05 14:40:10 +0200  
merb : chef-server (api) : worker (port 4000) ~ Routed to:  
{“controller”=\>“nodes”, “action”=\>“show”, “id”=\>“prodtest-master”,  
“format”=\>nil}  
merb : chef-server (api) : worker (port 4000) ~ Params:  
{“controller”=\>“nodes”, “action”=\>“show”, “id”=\>“prodtest-master”,  
“format”=\>nil}  
merb : chef-server (api) : worker (port 4000) ~  
{:before\_filters\_time=\>0.024005771, :after\_filters\_time=\>1.1935e-05,  
:action\_time=\>0.043984018, :dispatch\_time=\>0.044698021}  
merb : chef-server (api) : worker (port 4000) ~

```
  ConstrainVector: borrow[1] 0, delta 0

```

ConstrainV ector: current[0] -1, best\_val -1  
ConstrainVector: borrow[2] 0, delta [0…10]  
ConstrainV ector: current[1] [-10…0], best\_val -10  
ConstrainVector: borrow[3] 0, delta 0  
ConstrainV ector: current[2] 0, best\_val 0  
ConstrainVector: borrow[4] 0, delta [0…1]  
ConstrainV ector: current[3] [0…1], best\_val 0  
ConstrainVector: borrow[5] 0, delta [0…1]  
ConstrainV ector: current[4] [0…1], best\_val 0  
dep\_selector solve: SOLVED 2 packages, 1 constraints, Time: 1.764ms Stats: 1  
steps, 10970 bytes, 8 props, 3 nodes, 2 depth  
merb : chef-server (api) : worker (port 4000) ~ Started request handling:  
2012-06-05 14:40:10 +0200  
merb : chef-server (api) : worker (port 4000) ~ Routed to:  
{“run\_list”=\>[“getting-started”], “controller”=\>“environments”,  
“action”=\>“cookbook\_versions\_for\_run\_list”, “environment\_id”=\>"\_default"}  
merb : chef-server (api) : worker (port 4000) ~ Params:  
{“run\_list”=\>[“getting-started”], “controller”=\>“environments”,  
“action”=\>“cookbook\_versions\_for\_run\_list”, “environment\_id”=\>"\_default"}  
merb : chef-server (api) : worker (port 4000) ~  
{:before\_filters\_time=\>0.016346418, :after\_filters\_time=\>9.857e-06,  
:action\_time=\>0.077166217, :dispatch\_time=\>0.077611369}  
merb : chef-server (api) : worker (port 4000) ~

~ Qrack::Queue#publish will be removed in Bunny 0.8. Use direct\_exchange =  
bunny.exchange(’’); direct\_exchange.publish(‘message’, key: [queue.name](http://queue.name)) if you  
want to publish directly to one given queue. For more informations see  
[https://github.com/ruby-amqp/bunny/issues/15](https://github.com/ruby-amqp/bunny/issues/15) and for more theoretical  
explanation check [http://bit.ly/nOF1CK](http://bit.ly/nOF1CK)

------------------ end of logging ------------------

Version of chef is 0.10.10"

Thx alot for your help,  
Stefan

---

<div class="post-metadata">

**Author:** ![Mike\_Adolphs](https://sea2.discourse-cdn.com/flex016/user_avatar/discourse.chef.io/mike_adolphs/32/682_2.png) [@Mike\_Adolphs](https://discourse.chef.io/u/Mike_Adolphs)\
**Post date:** [June 11, 2012, 8:49am UTC](https://discourse.chef.io/t/chef-server-stops-responding-ever-other-request/2896/3 "2012-06-11T08:49:40Z")

</div>

Hi,

time is a bit on the short side right now, but I had similar problems with chef-server at first and did a bit of debugging at that time. I've seen that each time an amqp message gets sent/delivered/processed (not sure when), the whole environment stopped working.  
The reason behind all this: My rabbitmq-server package was way too new for chef-server. I've used the latest stable packages from rabbitmq's own apt repository. After downgrading to 2.6.1 everything went back to normal.

Within the rabbitmq changelog ([RabbitMQ Changelog — RabbitMQ](http://www.rabbitmq.com/changelog.html)) there're two interesting points which could be related:

- order preserved of messages re-queued for a consumer
- clients accept a new "amqp" URI scheme for connections

HTH,  
Mike Adolphs

On Jun 5, 2012, at 2:54 PM, Stefan Wendler wrote:

> Hi List,
> 
> maybe you can help me wit this? I've set up a "chef playground" with a  
> workstation, a server (+UI) and two clients. While everything works so far the  
> chef-server is making huge problems. I currently have to restart it after  
> every REST-call because it won't react to anything afterwards (until  
> restarted)
> 
> Example: I add a client (success) afterwards I try to add a cookbook (no  
> response). Even a simple client connect is enough to stop it
> 
> according to ps and netstat the merb process is still running and listening to  
> port 4000. And I can telnet to the port.
> 
> chef-server just hangs and is not responding to anything. Not even the gui.  
> After restart it's working again for one request.
> 
> chef-server is started like this:
> 
> /usr/local/bin/chef-server -d -e ${ENVIRONMENT}
> 
> where ENVIRONMENT is "production"
> 
> The "server.rb" is as follows  
> ---------------- server.rb -------------------  
> log\_level :debug  
> log\_location "/var/log/chef/chef\_server.log"  
> ssl\_verify\_mode :verify\_none  
> chef\_server\_url "[http://prodtest-slave:4000](http://prodtest-slave:4000)"
> 
> signing\_ca\_path "/var/chef/ca"  
> couchdb\_database 'chef'
> 
> cookbook\_path ["/var/chef/cookbooks", "/var/chef/site-cookbooks"]
> 
> file\_cache\_path "/var/chef/cache"  
> node\_path "/var/chef/nodes"  
> openid\_store\_path "/var/chef/openid/store"  
> openid\_cstore\_path "/var/chef/openid/cstore"  
> search\_index\_path "/var/chef/search\_index"  
> role\_path "/var/chef/roles"
> 
> validation\_client\_name "chef-validator"  
> validation\_key "/etc/chef/validation.pem"  
> client\_key "/etc/chef/client.pem"  
> web\_ui\_key "/etc/chef/webui.pem"  
> web\_ui\_client\_name "chef-webui"
> 
> web\_ui\_admin\_user\_name "admin"  
> web\_ui\_admin\_default\_password ""
> 
> supportdir = "/srv/chef/support"  
> solr\_jetty\_path File.join(supportdir, "solr", "jetty")  
> solr\_data\_path File.join(supportdir, "solr", "data")  
> solr\_home\_path File.join(supportdir, "solr", "home")  
> solr\_heap\_size "256M"
> 
> user 'chef'  
> group 'chef'
> 
> umask 0022
> 
> node\_name 'chef\_server'
> 
> Mixlib::Log::Formatter.show\_time = true  
> ---------------- end of server.rb -------------------
> 
> When I start it undaemonized it logs just this when it hangs:
> 
> ------------------ logging ------------------  
> merb : chef-server (api) : worker (port 4000) ~ Started request handling:  
> 2012-06-05 14:40:10 +0200  
> merb : chef-server (api) : worker (port 4000) ~ Routed to:  
> {"controller"=\>"nodes", "action"=\>"show", "id"=\>"prodtest-master",  
> "format"=\>nil}  
> merb : chef-server (api) : worker (port 4000) ~ Params:  
> {"controller"=\>"nodes", "action"=\>"show", "id"=\>"prodtest-master",  
> "format"=\>nil}  
> merb : chef-server (api) : worker (port 4000) ~  
> {:before\_filters\_time=\>0.024005771, :after\_filters\_time=\>1.1935e-05,  
> :action\_time=\>0.043984018, :dispatch\_time=\>0.044698021}  
> merb : chef-server (api) : worker (port 4000) ~
> 
> ```
> ConstrainVector: borrow[1] 0, delta 0
> 
> ```
> 
> ConstrainV ector: current[0] -1, best\_val -1  
> ConstrainVector: borrow[2] 0, delta [0..10]  
> ConstrainV ector: current[1] [-10..0], best\_val -10  
> ConstrainVector: borrow[3] 0, delta 0  
> ConstrainV ector: current[2] 0, best\_val 0  
> ConstrainVector: borrow[4] 0, delta [0..1]  
> ConstrainV ector: current[3] [0..1], best\_val 0  
> ConstrainVector: borrow[5] 0, delta [0..1]  
> ConstrainV ector: current[4] [0..1], best\_val 0  
> dep\_selector solve: SOLVED 2 packages, 1 constraints, Time: 1.764ms Stats: 1  
> steps, 10970 bytes, 8 props, 3 nodes, 2 depth  
> merb : chef-server (api) : worker (port 4000) ~ Started request handling:  
> 2012-06-05 14:40:10 +0200  
> merb : chef-server (api) : worker (port 4000) ~ Routed to:  
> {"run\_list"=\>["getting-started"], "controller"=\>"environments",  
> "action"=\>"cookbook\_versions\_for\_run\_list", "environment\_id"=\>"\_default"}  
> merb : chef-server (api) : worker (port 4000) ~ Params:  
> {"run\_list"=\>["getting-started"], "controller"=\>"environments",  
> "action"=\>"cookbook\_versions\_for\_run\_list", "environment\_id"=\>"\_default"}  
> merb : chef-server (api) : worker (port 4000) ~  
> {:before\_filters\_time=\>0.016346418, :after\_filters\_time=\>9.857e-06,  
> :action\_time=\>0.077166217, :dispatch\_time=\>0.077611369}  
> merb : chef-server (api) : worker (port 4000) ~
> 
> ~ Qrack::Queue#publish will be removed in Bunny 0.8. Use direct\_exchange =  
> bunny.exchange(''); direct\_exchange.publish('message', key: queue.name) if you  
> want to publish directly to one given queue. For more informations see  
> [~ Qrack::Queue#publish will be removed in Bunny 0.8. Deprecation Message. · Issue #15 · ruby-amqp/bunny · GitHub](https://github.com/ruby-amqp/bunny/issues/15) and for more theoretical  
> explanation check [File: Ruby AMQP gem: Working with exchanges — Documentation for ruby-amqp/amqp (master)](http://bit.ly/nOF1CK)
> 
> ------------------ end of logging ------------------
> 
> Version of chef is 0.10.10"
> 
> Thx alot for your help,  
> Stefan

* * *

Mike Adolphs  
Stitenstrasse 24  
23554 Luebeck

- Germany -

Mail. [mike@fooforge.com](mailto:mike@fooforge.com)  
Web. [http://fooforge.com/](http://fooforge.com/)  
Github. [fooforge (Mike Stojan) · GitHub](https://github.com/fooforge/)  
XING. [http://www.xing.com/profile/Mike\_Adolphs](http://www.xing.com/profile/Mike_Adolphs)

---

<div class="post-metadata">

**Author:** ![Stefan\_Wendler](https://avatars.discourse-cdn.com/v4/letter/s/43a26b/32.png) [@Stefan\_Wendler](https://discourse.chef.io/u/Stefan_Wendler)\
**Post date:** [June 11, 2012, 1:33pm UTC](https://discourse.chef.io/t/chef-server-stops-responding-ever-other-request/2896/4 "2012-06-11T13:33:49Z")

</div>

Hi,

thx for the answer. I will try and downgrade rabbit-mq. Will report if this works.

Cheers,  
Stefan

----- Ursprüngliche Mail -----  
Von: "Mike Adolphs" [mike@fooforge.com](mailto:mike@fooforge.com)  
An: [chef@lists.opscode.com](mailto:chef@lists.opscode.com)  
Gesendet: Montag, 11. Juni 2012 10:49:40  
Betreff: [chef] Re: chef-server stops responding ever other request

Hi,

time is a bit on the short side right now, but I had similar problems with chef-server at first and did a bit of debugging at that time. I've seen that each time an amqp message gets sent/delivered/processed (not sure when), the whole environment stopped working.  
The reason behind all this: My rabbitmq-server package was way too new for chef-server. I've used the latest stable packages from rabbitmq's own apt repository. After downgrading to 2.6.1 everything went back to normal.

Within the rabbitmq changelog ([RabbitMQ Changelog — RabbitMQ](http://www.rabbitmq.com/changelog.html)) there're two interesting points which could be related:

- order preserved of messages re-queued for a consumer
- clients accept a new "amqp" URI scheme for connections

HTH,  
Mike Adolphs

On Jun 5, 2012, at 2:54 PM, Stefan Wendler wrote:

> Hi List,
> 
> maybe you can help me wit this? I've set up a "chef playground" with a  
> workstation, a server (+UI) and two clients. While everything works so far the  
> chef-server is making huge problems. I currently have to restart it after  
> every REST-call because it won't react to anything afterwards (until  
> restarted)
> 
> Example: I add a client (success) afterwards I try to add a cookbook (no  
> response). Even a simple client connect is enough to stop it
> 
> according to ps and netstat the merb process is still running and listening to  
> port 4000. And I can telnet to the port.
> 
> chef-server just hangs and is not responding to anything. Not even the gui.  
> After restart it's working again for one request.
> 
> chef-server is started like this:
> 
> /usr/local/bin/chef-server -d -e ${ENVIRONMENT}
> 
> where ENVIRONMENT is "production"
> 
> The "server.rb" is as follows  
> ---------------- server.rb -------------------  
> log\_level :debug  
> log\_location "/var/log/chef/chef\_server.log"  
> ssl\_verify\_mode :verify\_none  
> chef\_server\_url "[http://prodtest-slave:4000](http://prodtest-slave:4000)"
> 
> signing\_ca\_path "/var/chef/ca"  
> couchdb\_database 'chef'
> 
> cookbook\_path ["/var/chef/cookbooks", "/var/chef/site-cookbooks"]
> 
> file\_cache\_path "/var/chef/cache"  
> node\_path "/var/chef/nodes"  
> openid\_store\_path "/var/chef/openid/store"  
> openid\_cstore\_path "/var/chef/openid/cstore"  
> search\_index\_path "/var/chef/search\_index"  
> role\_path "/var/chef/roles"
> 
> validation\_client\_name "chef-validator"  
> validation\_key "/etc/chef/validation.pem"  
> client\_key "/etc/chef/client.pem"  
> web\_ui\_key "/etc/chef/webui.pem"  
> web\_ui\_client\_name "chef-webui"
> 
> web\_ui\_admin\_user\_name "admin"  
> web\_ui\_admin\_default\_password ""
> 
> supportdir = "/srv/chef/support"  
> solr\_jetty\_path File.join(supportdir, "solr", "jetty")  
> solr\_data\_path File.join(supportdir, "solr", "data")  
> solr\_home\_path File.join(supportdir, "solr", "home")  
> solr\_heap\_size "256M"
> 
> user 'chef'  
> group 'chef'
> 
> umask 0022
> 
> node\_name 'chef\_server'
> 
> Mixlib::Log::Formatter.show\_time = true  
> ---------------- end of server.rb -------------------
> 
> When I start it undaemonized it logs just this when it hangs:
> 
> ------------------ logging ------------------  
> merb : chef-server (api) : worker (port 4000) ~ Started request handling:  
> 2012-06-05 14:40:10 +0200  
> merb : chef-server (api) : worker (port 4000) ~ Routed to:  
> {"controller"=\>"nodes", "action"=\>"show", "id"=\>"prodtest-master",  
> "format"=\>nil}  
> merb : chef-server (api) : worker (port 4000) ~ Params:  
> {"controller"=\>"nodes", "action"=\>"show", "id"=\>"prodtest-master",  
> "format"=\>nil}  
> merb : chef-server (api) : worker (port 4000) ~  
> {:before\_filters\_time=\>0.024005771, :after\_filters\_time=\>1.1935e-05,  
> :action\_time=\>0.043984018, :dispatch\_time=\>0.044698021}  
> merb : chef-server (api) : worker (port 4000) ~
> 
> ```
> ConstrainVector: borrow[1] 0, delta 0
> 
> ```
> 
> ConstrainV ector: current[0] -1, best\_val -1  
> ConstrainVector: borrow[2] 0, delta [0..10]  
> ConstrainV ector: current[1] [-10..0], best\_val -10  
> ConstrainVector: borrow[3] 0, delta 0  
> ConstrainV ector: current[2] 0, best\_val 0  
> ConstrainVector: borrow[4] 0, delta [0..1]  
> ConstrainV ector: current[3] [0..1], best\_val 0  
> ConstrainVector: borrow[5] 0, delta [0..1]  
> ConstrainV ector: current[4] [0..1], best\_val 0  
> dep\_selector solve: SOLVED 2 packages, 1 constraints, Time: 1.764ms Stats: 1  
> steps, 10970 bytes, 8 props, 3 nodes, 2 depth  
> merb : chef-server (api) : worker (port 4000) ~ Started request handling:  
> 2012-06-05 14:40:10 +0200  
> merb : chef-server (api) : worker (port 4000) ~ Routed to:  
> {"run\_list"=\>["getting-started"], "controller"=\>"environments",  
> "action"=\>"cookbook\_versions\_for\_run\_list", "environment\_id"=\>"\_default"}  
> merb : chef-server (api) : worker (port 4000) ~ Params:  
> {"run\_list"=\>["getting-started"], "controller"=\>"environments",  
> "action"=\>"cookbook\_versions\_for\_run\_list", "environment\_id"=\>"\_default"}  
> merb : chef-server (api) : worker (port 4000) ~  
> {:before\_filters\_time=\>0.016346418, :after\_filters\_time=\>9.857e-06,  
> :action\_time=\>0.077166217, :dispatch\_time=\>0.077611369}  
> merb : chef-server (api) : worker (port 4000) ~
> 
> ~ Qrack::Queue#publish will be removed in Bunny 0.8. Use direct\_exchange =  
> bunny.exchange(''); direct\_exchange.publish('message', key: queue.name) if you  
> want to publish directly to one given queue. For more informations see  
> [https://github.com/ruby-amqp/bunny/issues/15](https://github.com/ruby-amqp/bunny/issues/15) and for more theoretical  
> explanation check [File: Ruby AMQP gem: Working with exchanges — Documentation for ruby-amqp/amqp (master)](http://bit.ly/nOF1CK)
> 
> ------------------ end of logging ------------------
> 
> Version of chef is 0.10.10"
> 
> Thx alot for your help,  
> Stefan

* * *

Mike Adolphs  
Stitenstrasse 24  
23554 Luebeck

- Germany -

Mail. [mike@fooforge.com](mailto:mike@fooforge.com)  
Web. [http://fooforge.com/](http://fooforge.com/)  
Github. [fooforge (Mike Stojan) · GitHub](https://github.com/fooforge/)  
XING. [http://www.xing.com/profile/Mike\_Adolphs](http://www.xing.com/profile/Mike_Adolphs)

---

<div class="post-metadata">

**Author:** ![Stefan\_Wendler](https://avatars.discourse-cdn.com/v4/letter/s/43a26b/32.png) [@Stefan\_Wendler](https://discourse.chef.io/u/Stefan_Wendler)\
**Post date:** [June 18, 2012, 7:25am UTC](https://discourse.chef.io/t/chef-server-stops-responding-ever-other-request/2896/5 "2012-06-18T07:25:32Z")

</div>

Well, downgrading rabbitmq to 2.6.1 seems to work. It's running stable ever since.

Thx alot 🙂

----- Ursprüngliche Mail -----  
Von: "Stefan Wendler" [stefan.wendler@tngtech.com](mailto:stefan.wendler@tngtech.com)  
An: [chef@lists.opscode.com](mailto:chef@lists.opscode.com)  
Gesendet: Montag, 11. Juni 2012 15:33:49  
Betreff: [chef] Re: Re: chef-server stops responding ever other request

Hi,

thx for the answer. I will try and downgrade rabbit-mq. Will report if this works.

Cheers,  
Stefan

----- Ursprüngliche Mail -----  
Von: "Mike Adolphs" [mike@fooforge.com](mailto:mike@fooforge.com)  
An: [chef@lists.opscode.com](mailto:chef@lists.opscode.com)  
Gesendet: Montag, 11. Juni 2012 10:49:40  
Betreff: [chef] Re: chef-server stops responding ever other request

Hi,

time is a bit on the short side right now, but I had similar problems with chef-server at first and did a bit of debugging at that time. I've seen that each time an amqp message gets sent/delivered/processed (not sure when), the whole environment stopped working.  
The reason behind all this: My rabbitmq-server package was way too new for chef-server. I've used the latest stable packages from rabbitmq's own apt repository. After downgrading to 2.6.1 everything went back to normal.

Within the rabbitmq changelog ([RabbitMQ Changelog — RabbitMQ](http://www.rabbitmq.com/changelog.html)) there're two interesting points which could be related:

- order preserved of messages re-queued for a consumer
- clients accept a new "amqp" URI scheme for connections

HTH,  
Mike Adolphs

On Jun 5, 2012, at 2:54 PM, Stefan Wendler wrote:

> Hi List,
> 
> maybe you can help me wit this? I've set up a "chef playground" with a  
> workstation, a server (+UI) and two clients. While everything works so far the  
> chef-server is making huge problems. I currently have to restart it after  
> every REST-call because it won't react to anything afterwards (until  
> restarted)
> 
> Example: I add a client (success) afterwards I try to add a cookbook (no  
> response). Even a simple client connect is enough to stop it
> 
> according to ps and netstat the merb process is still running and listening to  
> port 4000. And I can telnet to the port.
> 
> chef-server just hangs and is not responding to anything. Not even the gui.  
> After restart it's working again for one request.
> 
> chef-server is started like this:
> 
> /usr/local/bin/chef-server -d -e ${ENVIRONMENT}
> 
> where ENVIRONMENT is "production"
> 
> The "server.rb" is as follows  
> ---------------- server.rb -------------------  
> log\_level :debug  
> log\_location "/var/log/chef/chef\_server.log"  
> ssl\_verify\_mode :verify\_none  
> chef\_server\_url "[http://prodtest-slave:4000](http://prodtest-slave:4000)"
> 
> signing\_ca\_path "/var/chef/ca"  
> couchdb\_database 'chef'
> 
> cookbook\_path ["/var/chef/cookbooks", "/var/chef/site-cookbooks"]
> 
> file\_cache\_path "/var/chef/cache"  
> node\_path "/var/chef/nodes"  
> openid\_store\_path "/var/chef/openid/store"  
> openid\_cstore\_path "/var/chef/openid/cstore"  
> search\_index\_path "/var/chef/search\_index"  
> role\_path "/var/chef/roles"
> 
> validation\_client\_name "chef-validator"  
> validation\_key "/etc/chef/validation.pem"  
> client\_key "/etc/chef/client.pem"  
> web\_ui\_key "/etc/chef/webui.pem"  
> web\_ui\_client\_name "chef-webui"
> 
> web\_ui\_admin\_user\_name "admin"  
> web\_ui\_admin\_default\_password ""
> 
> supportdir = "/srv/chef/support"  
> solr\_jetty\_path File.join(supportdir, "solr", "jetty")  
> solr\_data\_path File.join(supportdir, "solr", "data")  
> solr\_home\_path File.join(supportdir, "solr", "home")  
> solr\_heap\_size "256M"
> 
> user 'chef'  
> group 'chef'
> 
> umask 0022
> 
> node\_name 'chef\_server'
> 
> Mixlib::Log::Formatter.show\_time = true  
> ---------------- end of server.rb -------------------
> 
> When I start it undaemonized it logs just this when it hangs:
> 
> ------------------ logging ------------------  
> merb : chef-server (api) : worker (port 4000) ~ Started request handling:  
> 2012-06-05 14:40:10 +0200  
> merb : chef-server (api) : worker (port 4000) ~ Routed to:  
> {"controller"=\>"nodes", "action"=\>"show", "id"=\>"prodtest-master",  
> "format"=\>nil}  
> merb : chef-server (api) : worker (port 4000) ~ Params:  
> {"controller"=\>"nodes", "action"=\>"show", "id"=\>"prodtest-master",  
> "format"=\>nil}  
> merb : chef-server (api) : worker (port 4000) ~  
> {:before\_filters\_time=\>0.024005771, :after\_filters\_time=\>1.1935e-05,  
> :action\_time=\>0.043984018, :dispatch\_time=\>0.044698021}  
> merb : chef-server (api) : worker (port 4000) ~
> 
> ```
> ConstrainVector: borrow[1] 0, delta 0
> 
> ```
> 
> ConstrainV ector: current[0] -1, best\_val -1  
> ConstrainVector: borrow[2] 0, delta [0..10]  
> ConstrainV ector: current[1] [-10..0], best\_val -10  
> ConstrainVector: borrow[3] 0, delta 0  
> ConstrainV ector: current[2] 0, best\_val 0  
> ConstrainVector: borrow[4] 0, delta [0..1]  
> ConstrainV ector: current[3] [0..1], best\_val 0  
> ConstrainVector: borrow[5] 0, delta [0..1]  
> ConstrainV ector: current[4] [0..1], best\_val 0  
> dep\_selector solve: SOLVED 2 packages, 1 constraints, Time: 1.764ms Stats: 1  
> steps, 10970 bytes, 8 props, 3 nodes, 2 depth  
> merb : chef-server (api) : worker (port 4000) ~ Started request handling:  
> 2012-06-05 14:40:10 +0200  
> merb : chef-server (api) : worker (port 4000) ~ Routed to:  
> {"run\_list"=\>["getting-started"], "controller"=\>"environments",  
> "action"=\>"cookbook\_versions\_for\_run\_list", "environment\_id"=\>"\_default"}  
> merb : chef-server (api) : worker (port 4000) ~ Params:  
> {"run\_list"=\>["getting-started"], "controller"=\>"environments",  
> "action"=\>"cookbook\_versions\_for\_run\_list", "environment\_id"=\>"\_default"}  
> merb : chef-server (api) : worker (port 4000) ~  
> {:before\_filters\_time=\>0.016346418, :after\_filters\_time=\>9.857e-06,  
> :action\_time=\>0.077166217, :dispatch\_time=\>0.077611369}  
> merb : chef-server (api) : worker (port 4000) ~
> 
> ~ Qrack::Queue#publish will be removed in Bunny 0.8. Use direct\_exchange =  
> bunny.exchange(''); direct\_exchange.publish('message', key: queue.name) if you  
> want to publish directly to one given queue. For more informations see  
> [~ Qrack::Queue#publish will be removed in Bunny 0.8. Deprecation Message. · Issue #15 · ruby-amqp/bunny · GitHub](https://github.com/ruby-amqp/bunny/issues/15) and for more theoretical  
> explanation check [File: Ruby AMQP gem: Working with exchanges — Documentation for ruby-amqp/amqp (master)](http://bit.ly/nOF1CK)
> 
> ------------------ end of logging ------------------
> 
> Version of chef is 0.10.10"
> 
> Thx alot for your help,  
> Stefan

* * *

Mike Adolphs  
Stitenstrasse 24  
23554 Luebeck

- Germany -

Mail. [mike@fooforge.com](mailto:mike@fooforge.com)  
Web. [http://fooforge.com/](http://fooforge.com/)  
Github. [fooforge (Mike Stojan) · GitHub](https://github.com/fooforge/)  
XING. [http://www.xing.com/profile/Mike\_Adolphs](http://www.xing.com/profile/Mike_Adolphs)
