Memory Leaks

Description

*This issue has moved*

This issue has been moved permanently to Adaptavist's Product Support JIRA instance.

All existing users of this instance should have the same username on our Product Support instance. However, you will very likely need to click on the
Can't access your account link in order to reset to a new password.

I think that there might be a pretty big memory leak in the Main GroovyRunner.java execution "run" method. The code requests a BufferedReader to read the script file into the Script Engine, however no where in the try catch or finally does the code explicitly try to close the FileInputStream, the inputStreamReader, or the bufferedReader. We've been experiencing a complete system dead-lock with no errors or logs after a bunch of random script executions and I suspect that this might be the culprit.

Environment

Linux Ubunutu 10, Java1.6

Activity

Show:
User known
October 21, 2010, 8:26 AM

Closing the BufferedReader closes the InputStreamReader, closes the FileInputStream etc etc...

Brad Svee
October 20, 2010, 6:43 PM

I see the code fix, but it only makes the effort to close the bufferedReader object, leaving the InputStream and the FileReader objects open.

Jamie Echlin
October 13, 2010, 6:54 AM

First of all this is a bug that needs fixing. But I very much doubt it's the reason for your system dead-lock... I manage jira instances that invoke bazillions of groovy scripts, not a few random script executions, and I haven't seen this be a problem. The more likely scenario would be "Too many open files". I don't have access to a linux box right now, on windows I see the file descriptors being released periodically, using process explorer. I'm not 100% sure why though as I don't think the finalizer is being called. Maybe this behaves different on windows vs unix.

So, I will fix this problem, but if it hangs again try to get a thread dump, also run ulimit -n, and check the number of open files for the jira process using proc fs or lsof.

Fixed
Your pinned fields
Click on the next to a field label to start pinning.

Assignee

Jamie Echlin

Reporter

Brad Svee

Internal Complexity

Unknown

Internal Value

Unknown