cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Wei Deng (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (CASSANDRA-12561) LCS compaction going into infinite loop due to non-existent sstables
Date Wed, 31 Aug 2016 22:06:20 GMT

     [ https://issues.apache.org/jira/browse/CASSANDRA-12561?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Wei Deng updated CASSANDRA-12561:
---------------------------------
    Labels: lcs  (was: )

> LCS compaction going into infinite loop due to non-existent sstables
> --------------------------------------------------------------------
>
>                 Key: CASSANDRA-12561
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-12561
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Nimi Wariboko Jr.
>              Labels: lcs
>
> I believe this is related/similar to CASSANDRA-11373, but I'm running 3.5 and I still
have this issue.
> AFAICT, this happens when getCompactionCandidates in LeveledManifest.java returns a candidate
that does not exist on disk. 
> Eventually, all the compaction threads back up, garbage collections start taking an upwards
of 20 seconds and messages start being dropped.
> To get around this, I patched my instance with the following code in LeveledManifest.java
> {code:java}
> Set<SSTableReader> removeCandidates = new HashSet<>();
>             for (SSTableReader sstable : candidates)
>             {
>                 if (!(new java.io.File(sstable.getFilename())).exists()) {
>                     removeCandidates.add(sstable);
>                     logger.warn("Not compating candidate {} because it does not exist
({}).", sstable.getFilename(), sstable.openReason);
>                 }
>             }
>             candidates.removeAll(removeCandidates);
>             if (candidates.size() < 2)
>                 return Collections.emptyList();
>             else
>                 return candidates;
> {code}
> This just removes any candidate that doesn't exist on disk - however I'm not sure what
the side effects of this are.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message