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): How reproducible: Whenever creating huge numbers of nodes at a time. Steps to Reproduce: 1. Configure for C9 2. Create a thousand apps at a time 3. Actual results: Fail Expected results: It works. Additional info: 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 Steps: 1.Launch an instance and configure for C9 2.Create a 1000 apps at time Results: No timeout occurs, the apps were created fast.