Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 754AA200BCB for ; Wed, 9 Nov 2016 23:25:01 +0100 (CET) Received: by cust-asf.ponee.io (Postfix) id 73BD8160AEB; Wed, 9 Nov 2016 22:25:01 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id BBCEB160AFA for ; Wed, 9 Nov 2016 23:25:00 +0100 (CET) Received: (qmail 31814 invoked by uid 500); 9 Nov 2016 22:24:59 -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 31803 invoked by uid 99); 9 Nov 2016 22:24:59 -0000 Received: from arcas.apache.org (HELO arcas) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 09 Nov 2016 22:24:59 +0000 Received: from arcas.apache.org (localhost [127.0.0.1]) by arcas (Postfix) with ESMTP id A20C22C1F5A for ; Wed, 9 Nov 2016 22:24:59 +0000 (UTC) Date: Wed, 9 Nov 2016 22:24:59 +0000 (UTC) From: "Blake Eggleston (JIRA)" To: commits@cassandra.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (CASSANDRA-12888) Incremental repairs broken for MVs and CDC MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 archived-at: Wed, 09 Nov 2016 22:25:01 -0000 [ https://issues.apache.org/jira/browse/CASSANDRA-12888?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15652229#comment-15652229 ] Blake Eggleston commented on CASSANDRA-12888: --------------------------------------------- bq. skip anti-compaction altogether when there is a mismatch for MV tables I'm not sure how effective that would be in practice. In an active cluster, I'd expect the race between in flight mutations and flushes to usually result in at least a little bit of streaming. > Incremental repairs broken for MVs and CDC > ------------------------------------------ > > Key: CASSANDRA-12888 > URL: https://issues.apache.org/jira/browse/CASSANDRA-12888 > Project: Cassandra > Issue Type: Bug > Components: Streaming and Messaging > Reporter: Stefan Podkowinski > Priority: Critical > > SSTables streamed during the repair process will first be written locally and afterwards either simply added to the pool of existing sstables or, in case of existing MVs or active CDC, replayed on mutation basis: > As described in {{StreamReceiveTask.OnCompletionRunnable}}: > {quote} > We have a special path for views and for CDC. > For views, since the view requires cleaning up any pre-existing state, we must put all partitions through the same write path as normal mutations. This also ensures any 2is are also updated. > For CDC-enabled tables, we want to ensure that the mutations are run through the CommitLog so they can be archived by the CDC process on discard. > {quote} > Using the regular write path turns out to be an issue for incremental repairs, as we loose the {{repaired_at}} state in the process. Eventually the streamed rows will end up in the unrepaired set, in contrast to the rows on the sender site moved to the repaired set. The next repair run will stream the same data back again, causing rows to bounce on and on between nodes on each repair. > See linked dtest on steps to reproduce. An example for reproducing this manually using ccm can be found [here|https://gist.github.com/spodkowinski/2d8e0408516609c7ae701f2bf1e515e8] -- This message was sent by Atlassian JIRA (v6.3.4#6332)