[08/10] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.5
Merge branch 'cassandra-3.0' into cassandra-3.5 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/03df4c74 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/03df4c74 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/03df4c74 Branch: refs/heads/cassandra-3.5 Commit: 03df4c7460f8047f4af2cfc1b19318394b68b788 Parents: 496418c 1513139 Author: Yuki MorishitaAuthored: Fri Apr 1 12:45:42 2016 -0500 Committer: Yuki Morishita Committed: Fri Apr 1 12:45:42 2016 -0500 -- CHANGES.txt | 1 + .../db/lifecycle/LogAwareFileLister.java| 23 --- .../apache/cassandra/io/sstable/Descriptor.java | 20 +-- .../db/lifecycle/LogTransactionTest.java| 63 +++- .../cassandra/io/sstable/DescriptorTest.java| 40 + 5 files changed, 90 insertions(+), 57 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/03df4c74/CHANGES.txt --
[08/10] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.5
Merge branch 'cassandra-3.0' into cassandra-3.5 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/b80a31d7 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/b80a31d7 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/b80a31d7 Branch: refs/heads/cassandra-3.5 Commit: b80a31d7e0e3ea7bdb6cd5eb9de8d33a38e04430 Parents: b984ea3 067c8df Author: T Jake LucianiAuthored: Thu Mar 31 10:18:02 2016 -0400 Committer: T Jake Luciani Committed: Thu Mar 31 10:18:02 2016 -0400 -- CHANGES.txt | 1 + .../stress/settings/SettingsTransport.java| 18 +- 2 files changed, 18 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/b80a31d7/CHANGES.txt --
[08/10] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.5
Merge branch 'cassandra-3.0' into cassandra-3.5 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/cd69d9d3 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/cd69d9d3 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/cd69d9d3 Branch: refs/heads/cassandra-3.5 Commit: cd69d9de9c89a559eac4795e7a8cfa3e13c4 Parents: 7fbdce8 6807c59 Author: Marcus ErikssonAuthored: Thu Mar 31 09:44:35 2016 +0200 Committer: Marcus Eriksson Committed: Thu Mar 31 09:44:35 2016 +0200 -- CHANGES.txt | 1 + .../db/compaction/CompactionManager.java | 17 ++--- .../repair/RepairMessageVerbHandler.java | 18 ++ .../cassandra/service/ActiveRepairService.java| 2 +- 4 files changed, 22 insertions(+), 16 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/cd69d9d3/CHANGES.txt -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/cd69d9d3/src/java/org/apache/cassandra/db/compaction/CompactionManager.java -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/cd69d9d3/src/java/org/apache/cassandra/repair/RepairMessageVerbHandler.java -- diff --cc src/java/org/apache/cassandra/repair/RepairMessageVerbHandler.java index 3b23b1f,eeefec4..519fe5f --- a/src/java/org/apache/cassandra/repair/RepairMessageVerbHandler.java +++ b/src/java/org/apache/cassandra/repair/RepairMessageVerbHandler.java @@@ -98,17 -98,19 +98,19 @@@ public class RepairMessageVerbHandler i !sstable.metadata.isIndex() && // exclude SSTables from 2i new Bounds<>(sstable.first.getToken(), sstable.last.getToken()).intersects(repairingRange); } -}, true); //ephemeral snapshot, if repair fails, it will be cleaned next startup +}, true, false); //ephemeral snapshot, if repair fails, it will be cleaned next startup - - Set currentlyRepairing = ActiveRepairService.instance.currentlyRepairing(cfs.metadata.cfId, desc.parentSessionId); - if (!Sets.intersection(currentlyRepairing, snapshottedSSSTables).isEmpty()) + if (ActiveRepairService.instance.getParentRepairSession(desc.parentSessionId).isGlobal) { - // clear snapshot that we just created - cfs.clearSnapshot(desc.sessionId.toString()); - logErrorAndSendFailureResponse("Cannot start multiple repair sessions over the same sstables", message.from, id); - return; + Set currentlyRepairing = ActiveRepairService.instance.currentlyRepairing(cfs.metadata.cfId, desc.parentSessionId); + if (!Sets.intersection(currentlyRepairing, snapshottedSSSTables).isEmpty()) + { + // clear snapshot that we just created + cfs.clearSnapshot(desc.sessionId.toString()); + logErrorAndSendFailureResponse("Cannot start multiple repair sessions over the same sstables", message.from, id); + return; + } + ActiveRepairService.instance.getParentRepairSession(desc.parentSessionId).addSSTables(cfs.metadata.cfId, snapshottedSSSTables); } - ActiveRepairService.instance.getParentRepairSession(desc.parentSessionId).addSSTables(cfs.metadata.cfId, snapshottedSSSTables); logger.debug("Enqueuing response to snapshot request {} to {}", desc.sessionId, message.from); MessagingService.instance().sendReply(new MessageOut(MessagingService.Verb.INTERNAL_RESPONSE), id, message.from); break;
[08/10] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.5
Merge branch 'cassandra-3.0' into cassandra-3.5 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/df18c9b6 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/df18c9b6 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/df18c9b6 Branch: refs/heads/cassandra-3.5 Commit: df18c9b6c13225c9f62ce6ace544060f3264c8f0 Parents: 0a25085 0104834 Author: Marcus ErikssonAuthored: Tue Mar 29 11:21:11 2016 +0200 Committer: Marcus Eriksson Committed: Tue Mar 29 11:21:11 2016 +0200 -- CHANGES.txt | 1 + .../org/apache/cassandra/db/lifecycle/LifecycleTransaction.java | 5 - .../org/apache/cassandra/io/sstable/SSTableWriterTestBase.java | 3 +++ 3 files changed, 8 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/df18c9b6/CHANGES.txt -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/df18c9b6/test/unit/org/apache/cassandra/io/sstable/SSTableWriterTestBase.java --
[08/10] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.5
Merge branch 'cassandra-3.0' into cassandra-3.5 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/acc2f89c Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/acc2f89c Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/acc2f89c Branch: refs/heads/cassandra-3.5 Commit: acc2f89c10a7ae34c915c2c418f9dea5d8677c3c Parents: 5c4d5c7 70eab63 Author: Robert StuppAuthored: Mon Mar 28 13:26:19 2016 +0200 Committer: Robert Stupp Committed: Mon Mar 28 13:26:19 2016 +0200 -- src/java/org/apache/cassandra/service/paxos/PrepareCallback.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --
[08/10] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.5
Merge branch 'cassandra-3.0' into cassandra-3.5 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/4509934f Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/4509934f Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/4509934f Branch: refs/heads/cassandra-3.5 Commit: 4509934f9e73a92ad9d79fbc10b753a73fd9cf98 Parents: 76241eb d479b8d Author: Marcus ErikssonAuthored: Wed Mar 23 14:40:55 2016 +0100 Committer: Marcus Eriksson Committed: Wed Mar 23 14:40:55 2016 +0100 -- src/java/org/apache/cassandra/service/StorageService.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/4509934f/src/java/org/apache/cassandra/service/StorageService.java --
[08/10] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.5
Merge branch 'cassandra-3.0' into cassandra-3.5 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/faa9524a Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/faa9524a Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/faa9524a Branch: refs/heads/cassandra-3.5 Commit: faa9524a6858b55cf61209505902612dc90f310c Parents: 950b1a3 b623e82 Author: Marcus ErikssonAuthored: Wed Mar 16 09:23:52 2016 +0100 Committer: Marcus Eriksson Committed: Wed Mar 16 09:23:52 2016 +0100 -- CHANGES.txt | 1 + .../writers/MaxSSTableSizeWriter.java | 27 +--- 2 files changed, 19 insertions(+), 9 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/faa9524a/CHANGES.txt -- diff --cc CHANGES.txt index 4a060d3,13c682f..70e65e4 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -7,8 -6,10 +7,9 @@@ Merged from 3.0 * Fix filtering on non-primary key columns for queries without index (CASSANDRA-6377) * Fix sstableloader fail when using materialized view (CASSANDRA-11275) Merged from 2.2: + * Fix bloom filter sizing with LCS (CASSANDRA-11344) * (cqlsh) Fix error when result is 0 rows with EXPAND ON (CASSANDRA-11092) * Add missing newline at end of bin/cqlsh (CASSANDRA-11325) - * Fix AE in nodetool cfstats (backport CASSANDRA-10859) (CASSANDRA-11297) * Unresolved hostname leads to replace being ignored (CASSANDRA-11210) * Only log yaml config once, at startup (CASSANDRA-11217) * Reference leak with parallel repairs on the same table (CASSANDRA-11215) http://git-wip-us.apache.org/repos/asf/cassandra/blob/faa9524a/src/java/org/apache/cassandra/db/compaction/writers/MaxSSTableSizeWriter.java -- diff --cc src/java/org/apache/cassandra/db/compaction/writers/MaxSSTableSizeWriter.java index 609c898,b206498..8c3ada7 --- a/src/java/org/apache/cassandra/db/compaction/writers/MaxSSTableSizeWriter.java +++ b/src/java/org/apache/cassandra/db/compaction/writers/MaxSSTableSizeWriter.java @@@ -32,7 -33,7 +33,6 @@@ import org.apache.cassandra.io.sstable. public class MaxSSTableSizeWriter extends CompactionAwareWriter { - private final long estimatedTotalKeys; -private final long expectedWriteSize; private final long maxSSTableSize; private final int level; private final long estimatedSSTables; @@@ -74,11 -63,27 +74,26 @@@ this.allSSTables = txn.originals(); this.level = level; this.maxSSTableSize = maxSSTableSize; - estimatedTotalKeys = SSTableReader.getApproximateKeyCount(nonExpiredSSTables); - estimatedSSTables = Math.max(1, estimatedTotalKeys / maxSSTableSize); + + long totalSize = getTotalWriteSize(nonExpiredSSTables, estimatedTotalKeys, cfs, txn.opType()); -expectedWriteSize = Math.min(maxSSTableSize, totalSize); + estimatedSSTables = Math.max(1, totalSize / maxSSTableSize); + } + + /** + * Gets the estimated total amount of data to write during compaction + */ + private static long getTotalWriteSize(Iterable nonExpiredSSTables, long estimatedTotalKeys, ColumnFamilyStore cfs, OperationType compactionType) + { + long estimatedKeysBeforeCompaction = 0; + for (SSTableReader sstable : nonExpiredSSTables) + estimatedKeysBeforeCompaction += sstable.estimatedKeys(); + estimatedKeysBeforeCompaction = Math.max(1, estimatedKeysBeforeCompaction); + double estimatedCompactionRatio = (double) estimatedTotalKeys / estimatedKeysBeforeCompaction; ++ + return Math.round(estimatedCompactionRatio * cfs.getExpectedCompactedFileSize(nonExpiredSSTables, compactionType)); } -@Override -public boolean realAppend(UnfilteredRowIterator partition) +protected boolean realAppend(UnfilteredRowIterator partition) { RowIndexEntry rie = sstableWriter.append(partition); if (sstableWriter.currentWriter().getOnDiskFilePointer() > maxSSTableSize) @@@ -103,11 -103,6 +118,5 @@@ txn); sstableWriter.switchWriter(writer); - } - - @Override - public long estimatedKeys() - { - return estimatedTotalKeys; - } }
[08/10] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.5
Merge branch 'cassandra-3.0' into cassandra-3.5 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/950b1a3d Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/950b1a3d Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/950b1a3d Branch: refs/heads/cassandra-3.5 Commit: 950b1a3d2e5ef544a29013f3dc338675ae7682cf Parents: de44900 a479fb0 Author: Joshua McKenzieAuthored: Mon Mar 14 18:02:06 2016 -0400 Committer: Joshua McKenzie Committed: Mon Mar 14 18:02:06 2016 -0400 -- .../apache/cassandra/service/StorageProxy.java | 35 ++-- 1 file changed, 17 insertions(+), 18 deletions(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/950b1a3d/src/java/org/apache/cassandra/service/StorageProxy.java --
[08/10] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.5
Merge branch 'cassandra-3.0' into cassandra-3.5 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/de44900a Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/de44900a Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/de44900a Branch: refs/heads/cassandra-3.5 Commit: de44900a3ed0f4ff8041591860c1d0a30e94dff6 Parents: 2257a7a 854a243 Author: Yuki MorishitaAuthored: Fri Mar 11 16:30:21 2016 -0600 Committer: Yuki Morishita Committed: Fri Mar 11 16:30:21 2016 -0600 -- CHANGES.txt | 1 + bin/cqlsh.py | 5 + 2 files changed, 6 insertions(+) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/de44900a/CHANGES.txt -- diff --cc CHANGES.txt index e727ad5,3b5e51f..4a060d3 --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -7,7 -6,9 +7,8 @@@ Merged from 3.0 * Fix filtering on non-primary key columns for queries without index (CASSANDRA-6377) * Fix sstableloader fail when using materialized view (CASSANDRA-11275) Merged from 2.2: + * (cqlsh) Fix error when result is 0 rows with EXPAND ON (CASSANDRA-11092) * Add missing newline at end of bin/cqlsh (CASSANDRA-11325) - * Fix AE in nodetool cfstats (backport CASSANDRA-10859) (CASSANDRA-11297) * Unresolved hostname leads to replace being ignored (CASSANDRA-11210) * Only log yaml config once, at startup (CASSANDRA-11217) * Reference leak with parallel repairs on the same table (CASSANDRA-11215) http://git-wip-us.apache.org/repos/asf/cassandra/blob/de44900a/bin/cqlsh.py --
[08/10] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.5
Merge branch 'cassandra-3.0' into cassandra-3.5 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/96a6e2e5 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/96a6e2e5 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/96a6e2e5 Branch: refs/heads/cassandra-3.5 Commit: 96a6e2e5faeb9a570290b0edf656f39e215c11d2 Parents: d2333a9 7a5f8b1 Author: Marcus ErikssonAuthored: Thu Mar 10 11:20:26 2016 +0100 Committer: Marcus Eriksson Committed: Thu Mar 10 11:20:26 2016 +0100 -- --
[08/10] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.5
Merge branch 'cassandra-3.0' into cassandra-3.5 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/d2333a92 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/d2333a92 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/d2333a92 Branch: refs/heads/cassandra-3.5 Commit: d2333a9256c67306c617a237a5f465f913263702 Parents: e33d4be b808a18 Author: Yuki MorishitaAuthored: Wed Mar 9 11:43:37 2016 -0600 Committer: Yuki Morishita Committed: Wed Mar 9 11:43:37 2016 -0600 -- CHANGES.txt | 1 + bin/cqlsh | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) -- http://git-wip-us.apache.org/repos/asf/cassandra/blob/d2333a92/CHANGES.txt -- diff --cc CHANGES.txt index 72ce859,5efb1b0..ff67a2b --- a/CHANGES.txt +++ b/CHANGES.txt @@@ -3,6 -3,8 +3,7 @@@ Merged from 3.0 * Fix filtering on non-primary key columns for queries without index (CASSANDRA-6377) * Fix sstableloader fail when using materialized view (CASSANDRA-11275) Merged from 2.2: + * Add missing newline at end of bin/cqlsh (CASSANDRA-11325) - * Fix AE in nodetool cfstats (backport CASSANDRA-10859) (CASSANDRA-11297) * Unresolved hostname leads to replace being ignored (CASSANDRA-11210) * Only log yaml config once, at startup (CASSANDRA-11217) * Reference leak with parallel repairs on the same table (CASSANDRA-11215)
[08/10] cassandra git commit: Merge branch 'cassandra-3.0' into cassandra-3.5
Merge branch 'cassandra-3.0' into cassandra-3.5 Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/66fa1d49 Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/66fa1d49 Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/66fa1d49 Branch: refs/heads/cassandra-3.5 Commit: 66fa1d492c5875b02a9c864c6c9e47093d2c5c2c Parents: 8c83c8e 1543290 Author: Jason BrownAuthored: Mon Mar 7 05:32:51 2016 -0800 Committer: Jason Brown Committed: Mon Mar 7 05:32:51 2016 -0800 -- --