Details
-
Improvement
-
Status: Accepted
-
Normal
-
Resolution: Unresolved
-
SERVER 6.7.0
-
None
Description
Description
Jrubies can be borrowed for extended periods of time, while the client-side has long since moved past the original request. This can unnecessarily occupy a Jruby for long times and potentially cause conflicts with file-sync locks. It would be nice to have a timeout or maximum borrow time for a Jruby to prevent a situation where this could occur.
Desired Behavior
A JRuby should timeout after 60 minutes of being borrowed. The timeout should be configurable.
Actual Behavior
The JRuby is borrowed until the request is fully processed, which can be an indefinite amount of time. I recently saw one consumed for 28 days, which is well beyond the default 60 minute runtimeout of the agent run that made the request.
Additional Notes
If it is not possible to set a timeout for an individual request, is it possible to set a time based lifetime for the JRuby similar to max-requests-per-instance?
Attachments
Issue Links
- duplicates
-
SERVER-1997 Puppetserver should be able to terminate stuck JRuby borrows
-
- Closed
-