You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Nathan Jackels (JIRA)" <ji...@apache.org> on 2017/06/14 22:24:00 UTC

[jira] [Created] (CASSANDRA-13605) threads created during classload-static sections open commitlog handles

Nathan Jackels created CASSANDRA-13605:
------------------------------------------

             Summary: threads created during classload-static sections open commitlog handles
                 Key: CASSANDRA-13605
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-13605
             Project: Cassandra
          Issue Type: Bug
          Components: Core, Tools
            Reporter: Nathan Jackels
            Priority: Minor
             Fix For: 3.0.x


Some classes, such as org.apache.cassandra.db.commitlog.CommitLog create threads in static blocks. Some of these threads then open file-descriptors for the commitlog (and possibly sstables).

{noformat}
...
public static final CommitLog instance = CommitLog.construct();
...
private static CommitLog construct()
{
    CommitLog log = new CommitLog(DatabaseDescriptor.getCommitLogLocation(), CommitLogArchiver.construct());
    ....
    return log.start();
}
...
{noformat}

If this occurs in a non-daemon process such as nodetool, or any of the other sstable tools it could prevent a CassandraDaemon from deleting commitlog files.

These threads should only open files automatically if the process is a CassandraDaemon, not if it's a utility.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cassandra.apache.org
For additional commands, e-mail: commits-help@cassandra.apache.org