Return-Path: X-Original-To: apmail-cassandra-commits-archive@www.apache.org Delivered-To: apmail-cassandra-commits-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id CC15817977 for ; Thu, 9 Apr 2015 18:11:13 +0000 (UTC) Received: (qmail 17961 invoked by uid 500); 9 Apr 2015 18:11:13 -0000 Delivered-To: apmail-cassandra-commits-archive@cassandra.apache.org Received: (qmail 17922 invoked by uid 500); 9 Apr 2015 18:11:13 -0000 Mailing-List: contact commits-help@cassandra.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@cassandra.apache.org Delivered-To: mailing list commits@cassandra.apache.org Received: (qmail 17910 invoked by uid 99); 9 Apr 2015 18:11:13 -0000 Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Thu, 09 Apr 2015 18:11:13 +0000 Date: Thu, 9 Apr 2015 18:11:13 +0000 (UTC) From: "Marcus Eriksson (JIRA)" To: commits@cassandra.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (CASSANDRA-9143) Improving consistency of repairAt field across replicas MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ https://issues.apache.org/jira/browse/CASSANDRA-9143?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14487798#comment-14487798 ] Marcus Eriksson commented on CASSANDRA-9143: -------------------------------------------- the reason we send anticompaction requests on the parent repair session level is that we want to do as little actual anticompaction as possible, ie, if the entire sstable is contained within the repaired range, we don't actually do any anticompaction on it, we just change the sstable metadata so, with a rf=3 cluster, and a nodetool repair -inc, we would not anticompact the same sstables 3 times, instead we would just update the metadata for the sstables on that node > Improving consistency of repairAt field across replicas > -------------------------------------------------------- > > Key: CASSANDRA-9143 > URL: https://issues.apache.org/jira/browse/CASSANDRA-9143 > Project: Cassandra > Issue Type: Improvement > Components: Core > Reporter: sankalp kohli > Assignee: Marcus Eriksson > Priority: Minor > > We currently send an anticompaction request to all replicas. During this, a node will split stables and mark the appropriate ones repaired. > The problem is that this could fail on some replicas due to many reasons leading to problems in the next repair. > This is what I am suggesting to improve it. > 1) Send anticompaction request to all replicas. This can be done at session level. > 2) During anticompaction, stables are split but not marked repaired. > 3) When we get positive ack from all replicas, coordinator will send another message called markRepaired. > 4) On getting this message, replicas will mark the appropriate stables as repaired. > This will reduce the window of failure. We can also think of "hinting" markRepaired message if required. > Also the stables which are streaming can be marked as repaired like it is done now. -- This message was sent by Atlassian JIRA (v6.3.4#6332)