Details
-
Bug
-
Resolution: Fixed
-
Test Blocker
-
3.0
-
Security Level: Public
-
None
-
Untriaged
-
Unknown
-
June 30 - July 18
Description
Sometimes ep-engine doesn't send mutations and just hangs on a stream request.
Here's how to reproduce the issue:
1. Run a single node cluster with 4 vBuckets: COUCHBASE_NUM_VBUCKETS=4 ./cluster_run -n 1
2. Start testrunner with the attached ep-engine-hang.conf config file: ./testrunner -i b/resources/dev-single-node.ini -c conf/ep-engine-hang.conf
3. Wait until the test hangs. The last line in the testrunner output you would see should be something like: [2014-06-02 17:29:06,901] - [rest_client:481] INFO - index query url: http://127.0.0.1:9500/default/_design/test2/_view/redview_stats?stale=false&on_error=stop
4. Watch the ns_server output for something like: [couchdb:error,2014-06-02T17:30:06.906,n_0@127.0.0.1:<0.943.0>:couch_log:error:42]upr client (<0.943.0>): Obtaining mutation from server timed out after 60.0 seconds [RequestId 28 PartId 0]. Waiting..
You could also wait for >60 secs and grep the log files for 'upr client'
5. Now kill the testrunner test, keep the cluster running
6. Run the attached stream_request_hang.py script that uses pyupr to make a stream request. The script will hang although it should return a mutation.