You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Paulo Motta (JIRA)" <ji...@apache.org> on 2017/02/15 13:29:42 UTC
[jira] [Assigned] (CASSANDRA-13079) Warn user to run full repair
when increasing replication factor
[ https://issues.apache.org/jira/browse/CASSANDRA-13079?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Paulo Motta reassigned CASSANDRA-13079:
---------------------------------------
Assignee: Marcus Eriksson (was: Paulo Motta)
Priority: Minor (was: Critical)
Reviewer: Paulo Motta
Summary: Warn user to run full repair when increasing replication factor (was: Repair doesn't work after several replication factor changes)
Issue Type: Improvement (was: Bug)
Good point [~krummas], I agree dropping repaired sstables to the unrepaired compaction buckets will be much more catastrophic so warning the user is definitely the best approach here.
+1 to fix, tested locally and works as expected. Could you also update the [documentation|http://cassandra.apache.org/doc/latest/faq/index.html?highlight=replication#can-i-change-the-replication-factor-a-a-keyspace-on-a-live-cluster] to indicate the user must run a {{-full}} repair when increasing the RF?
Feel free to commit after this nit. Thanks!
> Warn user to run full repair when increasing replication factor
> ---------------------------------------------------------------
>
> Key: CASSANDRA-13079
> URL: https://issues.apache.org/jira/browse/CASSANDRA-13079
> Project: Cassandra
> Issue Type: Improvement
> Components: Core
> Environment: Debian
> Reporter: Vladimir Yudovin
> Assignee: Marcus Eriksson
> Priority: Minor
>
> Scenario:
> Start two nodes cluster.
> Create keyspace with rep.factor *one*:
> CREATE KEYSPACE rep WITH replication = {'class': 'SimpleStrategy', 'replication_factor': 1};
> CREATE TABLE rep.data (str text PRIMARY KEY );
> INSERT INTO rep.data (str) VALUES ( 'qwerty');
> Run *nodetool flush* on all nodes. On one of them table files are created.
> Change replication factor to *two*:
> ALTER KEYSPACE rep WITH replication = {'class': 'SimpleStrategy', 'replication_factor': 2};
> Run repair, then *nodetool flush* on all nodes. On all nodes table files are created.
> Change replication factor to *one*:
> ALTER KEYSPACE rep WITH replication = {'class': 'SimpleStrategy', 'replication_factor': 1};
> Then *nodetool cleanup*, only on initial node remained data files.
> Change replication factor to *two* again:
> ALTER KEYSPACE rep WITH replication = {'class': 'SimpleStrategy', 'replication_factor': 2};
> Run repair, then *nodetool flush* on all nodes. No data files on second node (though expected, as after first repair/flush).
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)