You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Jeff Jirsa (JIRA)" <ji...@apache.org> on 2017/12/02 23:23:00 UTC
[jira] [Commented] (CASSANDRA-14060) Separate
CorruptSSTableException and FSError handling policies
[ https://issues.apache.org/jira/browse/CASSANDRA-14060?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16275782#comment-16275782 ]
Jeff Jirsa commented on CASSANDRA-14060:
----------------------------------------
I think what you're proposing sounds reasonable, but before I actually review, I want to look at some of the history to remember how we got to this point.
Linking some topics for background:
- CASSANDRA-6646
- CASSANDRA-6364
[~iamaleksey] and [~kohlisankalp] - you two were involved in some of the earlier work. Does this seem like we need a new policy here?
[~jay.zhuang] - when you say most of your corrupt sstables aren't disk issues - to what do you attribute them?
> Separate CorruptSSTableException and FSError handling policies
> --------------------------------------------------------------
>
> Key: CASSANDRA-14060
> URL: https://issues.apache.org/jira/browse/CASSANDRA-14060
> Project: Cassandra
> Issue Type: Improvement
> Components: Configuration
> Reporter: Jay Zhuang
> Assignee: Jay Zhuang
> Priority: Minor
>
> Currently, if [{{disk_failure_policy}}|https://github.com/apache/cassandra/blob/trunk/conf/cassandra.yaml#L230] is set to {{stop}} (default), StorageService will shutdown for {{FSError}}, but not {{CorruptSSTableException}} [DefaultFSErrorHandler.java:40|https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/service/DefaultFSErrorHandler.java#L40].
> But when we use policy: {{die}}, it has different behave, JVM will be killed for both {{FSError}} and {{CorruptSSTableException}} [JVMStabilityInspector.java:63|https://github.com/apache/cassandra/blob/trunk/src/java/org/apache/cassandra/utils/JVMStabilityInspector.java#L63]:
> ||{{disk_failure_policy}}|| hit {{FSError}} Exception || hit {{CorruptSSTableException}} ||
> |{{stop}}| (/) stop | (x) not stop |
> |{{die}}| (/) die | (/) die |
> We saw {{CorruptSSTableException}} from time to time in our production, but mostly it's *not* because of a disk issue. So I would suggest having a separate policy for CorruptSSTable.
--
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