Red Hat Bugzilla – Bug 847150
httpd_singular stacks up and times out C9 app creation requests
Last modified: 2015-05-14 18:57:43 EDT
Description of problem:
Operations creates 1000 nodes at a time for C9. This stacks up a huge number of requests on the httpd_singular lock and causes timeouts.
Version-Release number of selected component (if applicable):
Whenever creating huge numbers of nodes at a time.
Steps to Reproduce:
1. Configure for C9
2. Create a thousand apps at a time
Here's an proposal for httpd_singular to stack up a bunch of graceful requests and only do one.
This should cause requests to wait at most two iterations for a graceful and create a sharp drop-off on the number of simultaneous graceful requests being processed.
1. Register a request for graceful.
1.1 atomic unique tmpfile in /dev/shm, empty
2. Grab the singular lock
3. Scan the set of requests and make a list (see #1)
3.1 A request is an empty request file.
3.2 If there are requests, then run chk and graceful
3.3 Copy the results into the request file
4. Read and remove my own request file and return the results
5. Unlock the singular lock
Crankcase pull request #356.
Pull request accepted.
Verified on devenv_1975
1.Launch an instance and configure for C9
2.Create a 1000 apps at time
No timeout occurs, the apps were created fast.