Omit tombstones from schema digests patch by Oleg Anastasyev; reviewed by jbellis for CASSANDRA-6862
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/4ce44df4 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/4ce44df4 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/4ce44df4 Branch: refs/heads/cassandra-2.1 Commit: 4ce44df4d346124013e322fdbb13993f7d0689ab Parents: f5e1cbc Author: Jonathan Ellis <[email protected]> Authored: Wed Mar 19 01:04:47 2014 -0500 Committer: Jonathan Ellis <[email protected]> Committed: Wed Mar 19 01:04:47 2014 -0500 ---------------------------------------------------------------------- CHANGES.txt | 1 + src/java/org/apache/cassandra/config/Schema.java | 4 ++++ 2 files changed, 5 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cassandra/blob/4ce44df4/CHANGES.txt ---------------------------------------------------------------------- diff --git a/CHANGES.txt b/CHANGES.txt index 7eebd5b..650f12c 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,4 +1,5 @@ 2.0.7 + * Omit tombstones from schema digests (CASSANDRA-6862) * Include correct consistencyLevel in LWT timeout (CASSANDRA-6884) * Lower chances for losing new SSTables during nodetool refresh and ColumnFamilyStore.loadNewSSTables (CASSANDRA-6514) http://git-wip-us.apache.org/repos/asf/cassandra/blob/4ce44df4/src/java/org/apache/cassandra/config/Schema.java ---------------------------------------------------------------------- diff --git a/src/java/org/apache/cassandra/config/Schema.java b/src/java/org/apache/cassandra/config/Schema.java index 0907177..f0a49dc 100644 --- a/src/java/org/apache/cassandra/config/Schema.java +++ b/src/java/org/apache/cassandra/config/Schema.java @@ -387,6 +387,10 @@ public class Schema if (invalidSchemaRow(row) || ignoredSchemaRow(row)) continue; + // we want to digest only live columns + ColumnFamilyStore.removeDeletedColumnsOnly(row.cf, Integer.MAX_VALUE); + row.cf.purgeTombstones(Integer.MAX_VALUE); + row.cf.updateDigest(versionDigest); }
