I'm working on an app that makes use of CouchDB to store orchestration configurations for OpenStack. Before we started putting things in production we decided to run some stress testing with Iron Cushion. I ran this in three environments - my own desktop (which ended up being the most powerful), a virtual server that I have for development (weakest), and a virtual server that is part of one of our staging environments (mid).

I basically used the settings used in the examples provided in the Iron Cushion documentation, the important ones being that I was using 100 connections to insert 1000 documents each 20 times during the bulk insert phase. This had no problem running on my home system, but the other two would cause the CouchDB server to crash every time. I toyed with the settings and the only one that seemed to affect this was changing the number of documents per bulk insert. At 10 (100 connections * 10 documents per * 20) the tests passed in all environments. At 100 documents per, the tests occasionally passed in my personal dev server (weakest) and always on my home system, but would consistently crash on the staging server.

After trying this several times I deleted the document store I'd been using on the staging server and created a new empty one. I ran the original (100x100x20) test. It managed to insert ~1.5 million documents before dying. (It should have completed at 2 million).

The CouchDB log only shows the successful 201 requests for the inserts. There's no indication of an error or any message about it dying. I have the output on pastebin at: http://pastebin.com/pF8AXceY . In summary I'm getting IOExceptions (Connection reset by peer) and ClosedChannelExceptions. This to me sounds like time out issues. Is there anything that would cause CouchDB to shut down after a number of time outs?

Here's some info on the systems:

My Home system:

Processor: AMD Phenom(tm) II X4 955 Processor 3.2GHz. Memory: 16GB Disk Space: 195GB available

Development server:

Processor: Intel(R) Xeon(R) CPU E5310 @ 1.60GHz Memory: 4GB Disk Space: 2.2GB available.

Staging server:

Processor: Intel(R) Xeon(R) CPU E5310 @ 1.60GHz Memory: 8GB Disk Space: 10GB available

Reply via email to