[ome-devel] File descriptor leak (ticket:1855)

Josh Moore josh at glencoesoftware.com
Tue Mar 9 16:18:30 GMT 2010


ticket:1855* describes a file descriptor leak which can occur when
user-written clients (e.g. scripts in Python or Matlab, modified
importers, etc.) rely on session timeouts to cleanup stateful services
which access files. These are: RenderingEngine, RawFileStore,
RawPixelsStore, and ThumbnailStore. Eventually, the server will reach
its file descriptor limit (often 1024 by default), and the server will
crash and require a restart. You can check the open files on Unix
systems via "lsof":

   josh at mac:~ $ jps -m
   2988 blitz.jar --Ice.Config=...
   2548 blitz.jar ome.fulltext --Ice.Config=...
   ...
   josh at mac:~ $ lsof -p 2988 | grep Pixels
   josh at mac:~ $ 

showing no files or:

    -sh-3.2$ /usr/sbin/lsof -p 3089 | grep Pixels | wc -l
    161 

showing 161 open /OMERO/Pixels files.

A patch has been applied both to the Beta4.1 branch and to trunk,
which we are currently testing. Actively, calling close() on these
services prevents the leak, as does closing (and not detaching) from
your session before it times out.

Cheers,
~Josh.

[*] http://trac.openmicroscopy.org.uk/omero/ticket/1855


More information about the ome-devel mailing list