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 0393CD3FB for ; Wed, 3 Oct 2012 15:32:08 +0000 (UTC) Received: (qmail 48226 invoked by uid 500); 3 Oct 2012 15:32:07 -0000 Delivered-To: apmail-cassandra-commits-archive@cassandra.apache.org Received: (qmail 48203 invoked by uid 500); 3 Oct 2012 15:32:07 -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 48194 invoked by uid 99); 3 Oct 2012 15:32:07 -0000 Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 03 Oct 2012 15:32:07 +0000 Date: Thu, 4 Oct 2012 02:32:07 +1100 (NCT) From: "Jonathan Ellis (JIRA)" To: commits@cassandra.apache.org Message-ID: <563012060.159306.1349278327805.JavaMail.jiratomcat@arcas> In-Reply-To: <1686403827.158458.1349260807621.JavaMail.jiratomcat@arcas> Subject: [jira] [Updated] (CASSANDRA-4752) Drop keyspace causes schema disagreement 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-4752?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jonathan Ellis updated CASSANDRA-4752: -------------------------------------- Attachment: 4752-v2.txt Thanks, Sam! I think you nailed it with your diagnosis of the problem. But the fix will not actually correct the timestamp (neither did the original code). Attaching v2 that makes the code do what I think was originally intended -- copy the old timestamp into the clone, or cap it at current time if necessary. > Drop keyspace causes schema disagreement > ----------------------------------------- > > Key: CASSANDRA-4752 > URL: https://issues.apache.org/jira/browse/CASSANDRA-4752 > Project: Cassandra > Issue Type: Bug > Affects Versions: 1.1.6 > Reporter: Sam Tunnicliffe > Assignee: Sam Tunnicliffe > Attachments: 0001-CASSANDRA-4752.txt, 4752-v2.txt > > > The fix for CASSANDRA-4698 introduced a bug whereby when drop keyspace is issued a schema disagreement immediately occurs. This seems to be because the > {code}ColumnFamily cf = ColumnFamily.create(modification.getValue().metadata());{code} > in {{RowMutation.deserializeFixingTimestamps}} does not preserve deletion info for the cf in the modification. In most cases, this doesn't cause a problem, but for a drop keyspace modification, there are no columns in the cf, so the deletion info is effectively lost leading to an incorrect digest being created and ultimately a schema disagreement. > Replacing the {{create}} with {{cloneMeShallow}} does preserve the deletion info and avoids the schema disagreement issue. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira