[ https://issues.apache.org/jira/browse/CASSANDRA-1188?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12878694#action_12878694
]
Matthew F. Dennis commented on CASSANDRA-1188:
----------------------------------------------
not all GC implementations close file descriptors when the objects are collected. Apparently
the one you're using on OSX does. Curious though, you didn't see *any* ballooning? If OSX
was releasing the descriptors when the objects were collected, I would expect to see a few
hundred open files while reading in a loop on OSX and only a handful after the patch.
random thought: It may also be a difference in memmapped IO versus not - perhaps OSX doesn't
use it (or isn't configured to)?
> multiget_slice calls do not close files resulting in file descriptor leak
> -------------------------------------------------------------------------
>
> Key: CASSANDRA-1188
> URL: https://issues.apache.org/jira/browse/CASSANDRA-1188
> Project: Cassandra
> Issue Type: Bug
> Components: Core
> Affects Versions: 0.7
> Environment: Ubuntu 10.04
> Reporter: Matt Conway
> Assignee: Matthew F. Dennis
> Priority: Critical
> Fix For: 0.7
>
> Attachments: 0001-trunk-1188.patch
>
>
> Insert 1000 rows into a super column family. Read them back in a loop using multiget_slice.
Note leaked file descriptors with lsof:
> lsof -p `ps ax | grep [C]assandraDaemon | awk '{print $1}'` | awk '{print $9}' | sort
| uniq -c | sort -n | tail -n 5
> Looks like SSTableNamesIterator is never closing the files it creates via the sstable
...?
> This is similar to CASSANDRA-1178 except for use of multiget_slice instead of get_slice
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
|