You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by sa...@apache.org on 2016/08/26 09:54:51 UTC
[1/9] cassandra git commit: Fix ant eclipse-warnings in 2.2
Repository: cassandra
Updated Branches:
refs/heads/cassandra-2.2 b9fc6a5e4 -> 5f6a12485
refs/heads/cassandra-3.0 b89ffe730 -> 0fd07e832
refs/heads/trunk d34c15b78 -> 05660a5ab
Fix ant eclipse-warnings in 2.2
Patch by Sam Tunnicliffe; reviewed by Tyler Hobbs for CASSANDRA-15258
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/5f6a1248
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/5f6a1248
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/5f6a1248
Branch: refs/heads/cassandra-2.2
Commit: 5f6a124853e55db9953e4e2fc717f9e9fe76d1d7
Parents: b9fc6a5
Author: Sam Tunnicliffe <sa...@beobal.com>
Authored: Wed Aug 24 13:02:44 2016 +0100
Committer: Sam Tunnicliffe <sa...@beobal.com>
Committed: Fri Aug 26 10:43:55 2016 +0100
----------------------------------------------------------------------
src/java/org/apache/cassandra/db/ColumnFamilyStore.java | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/5f6a1248/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/ColumnFamilyStore.java b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
index 0835a28..644d1f5 100644
--- a/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
+++ b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
@@ -901,7 +901,7 @@ public class ColumnFamilyStore implements ColumnFamilyStoreMBean
previousFlushFailure);
logFlush();
Flush flush = new Flush(false);
- ListenableFutureTask<?> flushTask = ListenableFutureTask.create(flush, null);
+ ListenableFutureTask<Void> flushTask = ListenableFutureTask.create(flush, null);
flushExecutor.submit(flushTask);
ListenableFutureTask<ReplayPosition> task = ListenableFutureTask.create(flush.postFlush);
postFlushExecutor.submit(task);
@@ -910,6 +910,9 @@ public class ColumnFamilyStore implements ColumnFamilyStoreMBean
ListenableFuture<ReplayPosition> future =
// If either of the two tasks errors out, resulting future must also error out.
// Combine the two futures and only return post-flush result after both have completed.
+ // Note that flushTask will always yield null, but Futures.allAsList is
+ // order preserving, which is why the transform function returns the result
+ // from item 1 in it's input list (i.e. what was yielded by task).
Futures.transform(Futures.allAsList(flushTask, task),
new Function<List<Object>, ReplayPosition>()
{
[4/9] cassandra git commit: Merge branch 'cassandra-2.2' into
cassandra-3.0
Posted by sa...@apache.org.
Merge branch 'cassandra-2.2' into cassandra-3.0
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/4dbc4f58
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/4dbc4f58
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/4dbc4f58
Branch: refs/heads/cassandra-3.0
Commit: 4dbc4f585619129884a62b57aada281925e402ef
Parents: b89ffe7 5f6a124
Author: Sam Tunnicliffe <sa...@beobal.com>
Authored: Fri Aug 26 10:45:59 2016 +0100
Committer: Sam Tunnicliffe <sa...@beobal.com>
Committed: Fri Aug 26 10:45:59 2016 +0100
----------------------------------------------------------------------
----------------------------------------------------------------------
[5/9] cassandra git commit: Merge branch 'cassandra-2.2' into
cassandra-3.0
Posted by sa...@apache.org.
Merge branch 'cassandra-2.2' into cassandra-3.0
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/4dbc4f58
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/4dbc4f58
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/4dbc4f58
Branch: refs/heads/trunk
Commit: 4dbc4f585619129884a62b57aada281925e402ef
Parents: b89ffe7 5f6a124
Author: Sam Tunnicliffe <sa...@beobal.com>
Authored: Fri Aug 26 10:45:59 2016 +0100
Committer: Sam Tunnicliffe <sa...@beobal.com>
Committed: Fri Aug 26 10:45:59 2016 +0100
----------------------------------------------------------------------
----------------------------------------------------------------------
[7/9] cassandra git commit: Fix ant eclipse-warnings in 3.0
Posted by sa...@apache.org.
Fix ant eclipse-warnings in 3.0
Patch by Sam Tunnicliffe; reviewed by Tyler Hobbs for CASSANDRA-12528
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/0fd07e83
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/0fd07e83
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/0fd07e83
Branch: refs/heads/cassandra-3.0
Commit: 0fd07e832be6e9c97ca968977ba2abdf9d5cd809
Parents: 4dbc4f5
Author: Sam Tunnicliffe <sa...@beobal.com>
Authored: Wed Aug 24 13:32:30 2016 +0100
Committer: Sam Tunnicliffe <sa...@beobal.com>
Committed: Fri Aug 26 10:48:42 2016 +0100
----------------------------------------------------------------------
.../db/compaction/TimeWindowCompactionStrategy.java | 3 +++
src/java/org/apache/cassandra/tools/SSTableExport.java | 11 +++++++----
2 files changed, 10 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/0fd07e83/src/java/org/apache/cassandra/db/compaction/TimeWindowCompactionStrategy.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/compaction/TimeWindowCompactionStrategy.java b/src/java/org/apache/cassandra/db/compaction/TimeWindowCompactionStrategy.java
index e2ab7dc..1aae633 100644
--- a/src/java/org/apache/cassandra/db/compaction/TimeWindowCompactionStrategy.java
+++ b/src/java/org/apache/cassandra/db/compaction/TimeWindowCompactionStrategy.java
@@ -71,6 +71,7 @@ public class TimeWindowCompactionStrategy extends AbstractCompactionStrategy
}
@Override
+ @SuppressWarnings("resource") // transaction is closed by AbstractCompactionTask::execute
public AbstractCompactionTask getNextBackgroundTask(int gcBefore)
{
while (true)
@@ -323,6 +324,7 @@ public class TimeWindowCompactionStrategy extends AbstractCompactionStrategy
}
@Override
+ @SuppressWarnings("resource") // transaction is closed by AbstractCompactionTask::execute
public synchronized Collection<AbstractCompactionTask> getMaximalTask(int gcBefore, boolean splitOutput)
{
Iterable<SSTableReader> filteredSSTables = filterSuspectSSTables(sstables);
@@ -335,6 +337,7 @@ public class TimeWindowCompactionStrategy extends AbstractCompactionStrategy
}
@Override
+ @SuppressWarnings("resource") // transaction is closed by AbstractCompactionTask::execute
public synchronized AbstractCompactionTask getUserDefinedTask(Collection<SSTableReader> sstables, int gcBefore)
{
assert !sstables.isEmpty(); // checked for by CM.submitUserDefined
http://git-wip-us.apache.org/repos/asf/cassandra/blob/0fd07e83/src/java/org/apache/cassandra/tools/SSTableExport.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/tools/SSTableExport.java b/src/java/org/apache/cassandra/tools/SSTableExport.java
index cc6b84b..cff1516 100644
--- a/src/java/org/apache/cassandra/tools/SSTableExport.java
+++ b/src/java/org/apache/cassandra/tools/SSTableExport.java
@@ -180,10 +180,13 @@ public class SSTableExport
CFMetaData metadata = metadataFromSSTable(desc);
if (cmd.hasOption(ENUMERATE_KEYS_OPTION))
{
- JsonTransformer.keysToJson(null, iterToStream(new KeyIterator(desc, metadata)),
- cmd.hasOption(RAW_TIMESTAMPS),
- metadata,
- System.out);
+ try (KeyIterator iter = new KeyIterator(desc, metadata))
+ {
+ JsonTransformer.keysToJson(null, iterToStream(iter),
+ cmd.hasOption(RAW_TIMESTAMPS),
+ metadata,
+ System.out);
+ }
}
else
{
[6/9] cassandra git commit: Fix ant eclipse-warnings in 3.0
Posted by sa...@apache.org.
Fix ant eclipse-warnings in 3.0
Patch by Sam Tunnicliffe; reviewed by Tyler Hobbs for CASSANDRA-12528
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/0fd07e83
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/0fd07e83
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/0fd07e83
Branch: refs/heads/trunk
Commit: 0fd07e832be6e9c97ca968977ba2abdf9d5cd809
Parents: 4dbc4f5
Author: Sam Tunnicliffe <sa...@beobal.com>
Authored: Wed Aug 24 13:32:30 2016 +0100
Committer: Sam Tunnicliffe <sa...@beobal.com>
Committed: Fri Aug 26 10:48:42 2016 +0100
----------------------------------------------------------------------
.../db/compaction/TimeWindowCompactionStrategy.java | 3 +++
src/java/org/apache/cassandra/tools/SSTableExport.java | 11 +++++++----
2 files changed, 10 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/0fd07e83/src/java/org/apache/cassandra/db/compaction/TimeWindowCompactionStrategy.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/compaction/TimeWindowCompactionStrategy.java b/src/java/org/apache/cassandra/db/compaction/TimeWindowCompactionStrategy.java
index e2ab7dc..1aae633 100644
--- a/src/java/org/apache/cassandra/db/compaction/TimeWindowCompactionStrategy.java
+++ b/src/java/org/apache/cassandra/db/compaction/TimeWindowCompactionStrategy.java
@@ -71,6 +71,7 @@ public class TimeWindowCompactionStrategy extends AbstractCompactionStrategy
}
@Override
+ @SuppressWarnings("resource") // transaction is closed by AbstractCompactionTask::execute
public AbstractCompactionTask getNextBackgroundTask(int gcBefore)
{
while (true)
@@ -323,6 +324,7 @@ public class TimeWindowCompactionStrategy extends AbstractCompactionStrategy
}
@Override
+ @SuppressWarnings("resource") // transaction is closed by AbstractCompactionTask::execute
public synchronized Collection<AbstractCompactionTask> getMaximalTask(int gcBefore, boolean splitOutput)
{
Iterable<SSTableReader> filteredSSTables = filterSuspectSSTables(sstables);
@@ -335,6 +337,7 @@ public class TimeWindowCompactionStrategy extends AbstractCompactionStrategy
}
@Override
+ @SuppressWarnings("resource") // transaction is closed by AbstractCompactionTask::execute
public synchronized AbstractCompactionTask getUserDefinedTask(Collection<SSTableReader> sstables, int gcBefore)
{
assert !sstables.isEmpty(); // checked for by CM.submitUserDefined
http://git-wip-us.apache.org/repos/asf/cassandra/blob/0fd07e83/src/java/org/apache/cassandra/tools/SSTableExport.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/tools/SSTableExport.java b/src/java/org/apache/cassandra/tools/SSTableExport.java
index cc6b84b..cff1516 100644
--- a/src/java/org/apache/cassandra/tools/SSTableExport.java
+++ b/src/java/org/apache/cassandra/tools/SSTableExport.java
@@ -180,10 +180,13 @@ public class SSTableExport
CFMetaData metadata = metadataFromSSTable(desc);
if (cmd.hasOption(ENUMERATE_KEYS_OPTION))
{
- JsonTransformer.keysToJson(null, iterToStream(new KeyIterator(desc, metadata)),
- cmd.hasOption(RAW_TIMESTAMPS),
- metadata,
- System.out);
+ try (KeyIterator iter = new KeyIterator(desc, metadata))
+ {
+ JsonTransformer.keysToJson(null, iterToStream(iter),
+ cmd.hasOption(RAW_TIMESTAMPS),
+ metadata,
+ System.out);
+ }
}
else
{
[2/9] cassandra git commit: Fix ant eclipse-warnings in 2.2
Posted by sa...@apache.org.
Fix ant eclipse-warnings in 2.2
Patch by Sam Tunnicliffe; reviewed by Tyler Hobbs for CASSANDRA-15258
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/5f6a1248
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/5f6a1248
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/5f6a1248
Branch: refs/heads/cassandra-3.0
Commit: 5f6a124853e55db9953e4e2fc717f9e9fe76d1d7
Parents: b9fc6a5
Author: Sam Tunnicliffe <sa...@beobal.com>
Authored: Wed Aug 24 13:02:44 2016 +0100
Committer: Sam Tunnicliffe <sa...@beobal.com>
Committed: Fri Aug 26 10:43:55 2016 +0100
----------------------------------------------------------------------
src/java/org/apache/cassandra/db/ColumnFamilyStore.java | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/5f6a1248/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/ColumnFamilyStore.java b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
index 0835a28..644d1f5 100644
--- a/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
+++ b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
@@ -901,7 +901,7 @@ public class ColumnFamilyStore implements ColumnFamilyStoreMBean
previousFlushFailure);
logFlush();
Flush flush = new Flush(false);
- ListenableFutureTask<?> flushTask = ListenableFutureTask.create(flush, null);
+ ListenableFutureTask<Void> flushTask = ListenableFutureTask.create(flush, null);
flushExecutor.submit(flushTask);
ListenableFutureTask<ReplayPosition> task = ListenableFutureTask.create(flush.postFlush);
postFlushExecutor.submit(task);
@@ -910,6 +910,9 @@ public class ColumnFamilyStore implements ColumnFamilyStoreMBean
ListenableFuture<ReplayPosition> future =
// If either of the two tasks errors out, resulting future must also error out.
// Combine the two futures and only return post-flush result after both have completed.
+ // Note that flushTask will always yield null, but Futures.allAsList is
+ // order preserving, which is why the transform function returns the result
+ // from item 1 in it's input list (i.e. what was yielded by task).
Futures.transform(Futures.allAsList(flushTask, task),
new Function<List<Object>, ReplayPosition>()
{
[3/9] cassandra git commit: Fix ant eclipse-warnings in 2.2
Posted by sa...@apache.org.
Fix ant eclipse-warnings in 2.2
Patch by Sam Tunnicliffe; reviewed by Tyler Hobbs for CASSANDRA-15258
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/5f6a1248
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/5f6a1248
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/5f6a1248
Branch: refs/heads/trunk
Commit: 5f6a124853e55db9953e4e2fc717f9e9fe76d1d7
Parents: b9fc6a5
Author: Sam Tunnicliffe <sa...@beobal.com>
Authored: Wed Aug 24 13:02:44 2016 +0100
Committer: Sam Tunnicliffe <sa...@beobal.com>
Committed: Fri Aug 26 10:43:55 2016 +0100
----------------------------------------------------------------------
src/java/org/apache/cassandra/db/ColumnFamilyStore.java | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/5f6a1248/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/ColumnFamilyStore.java b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
index 0835a28..644d1f5 100644
--- a/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
+++ b/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
@@ -901,7 +901,7 @@ public class ColumnFamilyStore implements ColumnFamilyStoreMBean
previousFlushFailure);
logFlush();
Flush flush = new Flush(false);
- ListenableFutureTask<?> flushTask = ListenableFutureTask.create(flush, null);
+ ListenableFutureTask<Void> flushTask = ListenableFutureTask.create(flush, null);
flushExecutor.submit(flushTask);
ListenableFutureTask<ReplayPosition> task = ListenableFutureTask.create(flush.postFlush);
postFlushExecutor.submit(task);
@@ -910,6 +910,9 @@ public class ColumnFamilyStore implements ColumnFamilyStoreMBean
ListenableFuture<ReplayPosition> future =
// If either of the two tasks errors out, resulting future must also error out.
// Combine the two futures and only return post-flush result after both have completed.
+ // Note that flushTask will always yield null, but Futures.allAsList is
+ // order preserving, which is why the transform function returns the result
+ // from item 1 in it's input list (i.e. what was yielded by task).
Futures.transform(Futures.allAsList(flushTask, task),
new Function<List<Object>, ReplayPosition>()
{
[9/9] cassandra git commit: Fix ant eclipse-warnings in trunk
Posted by sa...@apache.org.
Fix ant eclipse-warnings in trunk
Patch by Sam Tunnicliffe; reviewed by Tyler Hobbs for CASSANDRA-12528
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/05660a5a
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/05660a5a
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/05660a5a
Branch: refs/heads/trunk
Commit: 05660a5ababc766ffe87cc748dbfc8640b2023cd
Parents: b834aed
Author: Sam Tunnicliffe <sa...@beobal.com>
Authored: Wed Aug 24 17:54:23 2016 +0100
Committer: Sam Tunnicliffe <sa...@beobal.com>
Committed: Fri Aug 26 10:51:53 2016 +0100
----------------------------------------------------------------------
.../org/apache/cassandra/db/SystemKeyspace.java | 7 +----
.../cassandra/db/commitlog/CommitLog.java | 7 +----
.../db/commitlog/CommitLogSegmentReader.java | 2 ++
.../compaction/LeveledCompactionStrategy.java | 5 ++--
.../cassandra/db/rows/UnfilteredSerializer.java | 7 +----
.../org/apache/cassandra/hints/HintsWriter.java | 7 +----
.../index/sasi/disk/PerSSTableIndexWriter.java | 2 ++
.../index/sasi/disk/StaticTokenTreeBuilder.java | 1 +
.../index/sasi/plan/QueryController.java | 1 +
.../io/sstable/IndexSummaryBuilder.java | 2 +-
.../cassandra/io/sstable/SSTableTxnWriter.java | 5 ++--
.../io/util/ChecksummedRandomAccessReader.java | 2 +-
.../io/util/ChecksummedRebufferer.java | 1 +
.../cassandra/io/util/DataOutputBuffer.java | 27 ++++++++++----------
.../apache/cassandra/metrics/TableMetrics.java | 12 ++++-----
.../org/apache/cassandra/net/MessageOut.java | 7 +----
.../cassandra/security/EncryptionUtils.java | 2 ++
17 files changed, 42 insertions(+), 55 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/05660a5a/src/java/org/apache/cassandra/db/SystemKeyspace.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/SystemKeyspace.java b/src/java/org/apache/cassandra/db/SystemKeyspace.java
index b23729e..598914a 100644
--- a/src/java/org/apache/cassandra/db/SystemKeyspace.java
+++ b/src/java/org/apache/cassandra/db/SystemKeyspace.java
@@ -665,8 +665,7 @@ public final class SystemKeyspace
private static Map<UUID, ByteBuffer> truncationAsMapEntry(ColumnFamilyStore cfs, long truncatedAt, CommitLogPosition position)
{
- DataOutputBuffer out = null;
- try (DataOutputBuffer ignored = out = DataOutputBuffer.scratchBuffer.get())
+ try (DataOutputBuffer out = DataOutputBuffer.scratchBuffer.get())
{
CommitLogPosition.serializer.serialize(position, out);
out.writeLong(truncatedAt);
@@ -676,10 +675,6 @@ public final class SystemKeyspace
{
throw new RuntimeException(e);
}
- finally
- {
- out.recycle();
- }
}
public static CommitLogPosition getTruncatedPosition(UUID cfId)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/05660a5a/src/java/org/apache/cassandra/db/commitlog/CommitLog.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/commitlog/CommitLog.java b/src/java/org/apache/cassandra/db/commitlog/CommitLog.java
index cf0368b..750fabc 100644
--- a/src/java/org/apache/cassandra/db/commitlog/CommitLog.java
+++ b/src/java/org/apache/cassandra/db/commitlog/CommitLog.java
@@ -244,8 +244,7 @@ public class CommitLog implements CommitLogMBean
{
assert mutation != null;
- DataOutputBuffer dob = DataOutputBuffer.scratchBuffer.get();
- try
+ try (DataOutputBuffer dob = DataOutputBuffer.scratchBuffer.get())
{
Mutation.serializer.serialize(mutation, dob, MessagingService.current_version);
int size = dob.getLength();
@@ -290,10 +289,6 @@ public class CommitLog implements CommitLogMBean
{
throw new FSWriteError(e, segmentManager.allocatingFrom().getPath());
}
- finally
- {
- dob.recycle();
- }
}
/**
http://git-wip-us.apache.org/repos/asf/cassandra/blob/05660a5a/src/java/org/apache/cassandra/db/commitlog/CommitLogSegmentReader.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/commitlog/CommitLogSegmentReader.java b/src/java/org/apache/cassandra/db/commitlog/CommitLogSegmentReader.java
index b547131..e23a915 100644
--- a/src/java/org/apache/cassandra/db/commitlog/CommitLogSegmentReader.java
+++ b/src/java/org/apache/cassandra/db/commitlog/CommitLogSegmentReader.java
@@ -273,6 +273,7 @@ public class CommitLogSegmentReader implements Iterable<CommitLogSegmentReader.S
nextLogicalStart = reader.getFilePointer();
}
+ @SuppressWarnings("resource")
public SyncSegment nextSegment(final int startPosition, final int nextSectionStartPosition) throws IOException
{
reader.seek(startPosition);
@@ -352,6 +353,7 @@ public class CommitLogSegmentReader implements Iterable<CommitLogSegmentReader.S
};
}
+ @SuppressWarnings("resource")
public SyncSegment nextSegment(int startPosition, int nextSectionStartPosition) throws IOException
{
int totalPlainTextLength = reader.readInt();
http://git-wip-us.apache.org/repos/asf/cassandra/blob/05660a5a/src/java/org/apache/cassandra/db/compaction/LeveledCompactionStrategy.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/compaction/LeveledCompactionStrategy.java b/src/java/org/apache/cassandra/db/compaction/LeveledCompactionStrategy.java
index 96d89c2..88f9b37 100644
--- a/src/java/org/apache/cassandra/db/compaction/LeveledCompactionStrategy.java
+++ b/src/java/org/apache/cassandra/db/compaction/LeveledCompactionStrategy.java
@@ -98,7 +98,7 @@ public class LeveledCompactionStrategy extends AbstractCompactionStrategy
* the only difference between background and maximal in LCS is that maximal is still allowed
* (by explicit user request) even when compaction is disabled.
*/
- @SuppressWarnings("resource")
+ @SuppressWarnings("resource") // transaction is closed by AbstractCompactionTask::execute
public AbstractCompactionTask getNextBackgroundTask(int gcBefore)
{
while (true)
@@ -134,7 +134,7 @@ public class LeveledCompactionStrategy extends AbstractCompactionStrategy
}
}
- @SuppressWarnings("resource")
+ @SuppressWarnings("resource") // transaction is closed by AbstractCompactionTask::execute
public synchronized Collection<AbstractCompactionTask> getMaximalTask(int gcBefore, boolean splitOutput)
{
Iterable<SSTableReader> sstables = manifest.getAllSSTables();
@@ -150,6 +150,7 @@ public class LeveledCompactionStrategy extends AbstractCompactionStrategy
}
@Override
+ @SuppressWarnings("resource") // transaction is closed by AbstractCompactionTask::execute
public AbstractCompactionTask getUserDefinedTask(Collection<SSTableReader> sstables, int gcBefore)
{
http://git-wip-us.apache.org/repos/asf/cassandra/blob/05660a5a/src/java/org/apache/cassandra/db/rows/UnfilteredSerializer.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/rows/UnfilteredSerializer.java b/src/java/org/apache/cassandra/db/rows/UnfilteredSerializer.java
index db18859..c79cc8c 100644
--- a/src/java/org/apache/cassandra/db/rows/UnfilteredSerializer.java
+++ b/src/java/org/apache/cassandra/db/rows/UnfilteredSerializer.java
@@ -184,8 +184,7 @@ public class UnfilteredSerializer
if (header.isForSSTable())
{
- DataOutputBuffer dob = DataOutputBuffer.scratchBuffer.get();
- try
+ try (DataOutputBuffer dob = DataOutputBuffer.scratchBuffer.get())
{
serializeRowBody(row, flags, header, dob);
@@ -195,10 +194,6 @@ public class UnfilteredSerializer
out.writeUnsignedVInt(previousUnfilteredSize);
out.write(dob.getData(), 0, dob.getLength());
}
- finally
- {
- dob.recycle();
- }
}
else
{
http://git-wip-us.apache.org/repos/asf/cassandra/blob/05660a5a/src/java/org/apache/cassandra/hints/HintsWriter.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/hints/HintsWriter.java b/src/java/org/apache/cassandra/hints/HintsWriter.java
index a081451..dca915a 100644
--- a/src/java/org/apache/cassandra/hints/HintsWriter.java
+++ b/src/java/org/apache/cassandra/hints/HintsWriter.java
@@ -74,8 +74,7 @@ class HintsWriter implements AutoCloseable
CRC32 crc = new CRC32();
- DataOutputBuffer dob = null;
- try (DataOutputBuffer ignored = dob = DataOutputBuffer.scratchBuffer.get())
+ try (DataOutputBuffer dob = DataOutputBuffer.scratchBuffer.get())
{
// write the descriptor
descriptor.serialize(dob);
@@ -88,10 +87,6 @@ class HintsWriter implements AutoCloseable
channel.close();
throw e;
}
- finally
- {
- dob.recycle();
- }
if (descriptor.isEncrypted())
return new EncryptedHintsWriter(directory, descriptor, file, channel, fd, crc);
http://git-wip-us.apache.org/repos/asf/cassandra/blob/05660a5a/src/java/org/apache/cassandra/index/sasi/disk/PerSSTableIndexWriter.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/index/sasi/disk/PerSSTableIndexWriter.java b/src/java/org/apache/cassandra/index/sasi/disk/PerSSTableIndexWriter.java
index 6a46338..9fa4e87 100644
--- a/src/java/org/apache/cassandra/index/sasi/disk/PerSSTableIndexWriter.java
+++ b/src/java/org/apache/cassandra/index/sasi/disk/PerSSTableIndexWriter.java
@@ -305,6 +305,7 @@ public class PerSSTableIndexWriter implements SSTableFlushObserver
for (Future<OnDiskIndex> f : segments)
{
+ @SuppressWarnings("resource")
OnDiskIndex part = f.get();
if (part == null)
continue;
@@ -330,6 +331,7 @@ public class PerSSTableIndexWriter implements SSTableFlushObserver
for (int segment = 0; segment < segmentNumber; segment++)
{
+ @SuppressWarnings("resource")
OnDiskIndex part = parts[segment];
if (part != null)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/05660a5a/src/java/org/apache/cassandra/index/sasi/disk/StaticTokenTreeBuilder.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/index/sasi/disk/StaticTokenTreeBuilder.java b/src/java/org/apache/cassandra/index/sasi/disk/StaticTokenTreeBuilder.java
index 7a41b38..6e64c56 100644
--- a/src/java/org/apache/cassandra/index/sasi/disk/StaticTokenTreeBuilder.java
+++ b/src/java/org/apache/cassandra/index/sasi/disk/StaticTokenTreeBuilder.java
@@ -53,6 +53,7 @@ import com.google.common.collect.Iterators;
*
* See https://issues.apache.org/jira/browse/CASSANDRA-11383 for more details.
*/
+@SuppressWarnings("resource")
public class StaticTokenTreeBuilder extends AbstractTokenTreeBuilder
{
private final CombinedTerm combinedTerm;
http://git-wip-us.apache.org/repos/asf/cassandra/blob/05660a5a/src/java/org/apache/cassandra/index/sasi/plan/QueryController.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/index/sasi/plan/QueryController.java b/src/java/org/apache/cassandra/index/sasi/plan/QueryController.java
index c8ae0d8..fa1181f 100644
--- a/src/java/org/apache/cassandra/index/sasi/plan/QueryController.java
+++ b/src/java/org/apache/cassandra/index/sasi/plan/QueryController.java
@@ -141,6 +141,7 @@ public class QueryController
for (Map.Entry<Expression, Set<SSTableIndex>> e : getView(op, expressions).entrySet())
{
+ @SuppressWarnings("resource") // RangeIterators are closed by releaseIndexes
RangeIterator<Long, Token> index = TermIterator.build(e.getKey(), e.getValue());
if (index == null)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/05660a5a/src/java/org/apache/cassandra/io/sstable/IndexSummaryBuilder.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/io/sstable/IndexSummaryBuilder.java b/src/java/org/apache/cassandra/io/sstable/IndexSummaryBuilder.java
index 1f4fdc2..6110afe 100644
--- a/src/java/org/apache/cassandra/io/sstable/IndexSummaryBuilder.java
+++ b/src/java/org/apache/cassandra/io/sstable/IndexSummaryBuilder.java
@@ -85,7 +85,6 @@ public class IndexSummaryBuilder implements AutoCloseable
}
}
- @SuppressWarnings("resource")
public IndexSummaryBuilder(long expectedKeys, int minIndexInterval, int samplingLevel)
{
this.samplingLevel = samplingLevel;
@@ -282,6 +281,7 @@ public class IndexSummaryBuilder implements AutoCloseable
* @param partitioner the partitioner used for the index summary
* @return a new IndexSummary
*/
+ @SuppressWarnings("resource")
public static IndexSummary downsample(IndexSummary existing, int newSamplingLevel, int minIndexInterval, IPartitioner partitioner)
{
// To downsample the old index summary, we'll go through (potentially) several rounds of downsampling.
http://git-wip-us.apache.org/repos/asf/cassandra/blob/05660a5a/src/java/org/apache/cassandra/io/sstable/SSTableTxnWriter.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/io/sstable/SSTableTxnWriter.java b/src/java/org/apache/cassandra/io/sstable/SSTableTxnWriter.java
index 5ffde15..28ca4c4 100644
--- a/src/java/org/apache/cassandra/io/sstable/SSTableTxnWriter.java
+++ b/src/java/org/apache/cassandra/io/sstable/SSTableTxnWriter.java
@@ -96,7 +96,7 @@ public class SSTableTxnWriter extends Transactional.AbstractTransactional implem
return writer.finished();
}
- @SuppressWarnings("resource") // log and writer closed during postCleanup
+ @SuppressWarnings("resource") // log and writer closed during doPostCleanup
public static SSTableTxnWriter create(ColumnFamilyStore cfs, Descriptor descriptor, long keyCount, long repairedAt, int sstableLevel, SerializationHeader header)
{
LifecycleTransaction txn = LifecycleTransaction.offline(OperationType.WRITE);
@@ -105,6 +105,7 @@ public class SSTableTxnWriter extends Transactional.AbstractTransactional implem
}
+ @SuppressWarnings("resource") // log and writer closed during doPostCleanup
public static SSTableTxnWriter createRangeAware(ColumnFamilyStore cfs, long keyCount, long repairedAt, SSTableFormat.Type type, int sstableLevel, SerializationHeader header)
{
LifecycleTransaction txn = LifecycleTransaction.offline(OperationType.WRITE);
@@ -123,7 +124,7 @@ public class SSTableTxnWriter extends Transactional.AbstractTransactional implem
return new SSTableTxnWriter(txn, writer);
}
- @SuppressWarnings("resource") // log and writer closed during postCleanup
+ @SuppressWarnings("resource") // log and writer closed during doPostCleanup
public static SSTableTxnWriter create(CFMetaData cfm,
Descriptor descriptor,
long keyCount,
http://git-wip-us.apache.org/repos/asf/cassandra/blob/05660a5a/src/java/org/apache/cassandra/io/util/ChecksummedRandomAccessReader.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/io/util/ChecksummedRandomAccessReader.java b/src/java/org/apache/cassandra/io/util/ChecksummedRandomAccessReader.java
index e1f795a..2e59e3b 100644
--- a/src/java/org/apache/cassandra/io/util/ChecksummedRandomAccessReader.java
+++ b/src/java/org/apache/cassandra/io/util/ChecksummedRandomAccessReader.java
@@ -24,6 +24,7 @@ import org.apache.cassandra.utils.ChecksumType;
public final class ChecksummedRandomAccessReader
{
+ @SuppressWarnings("resource") // The Rebufferer owns both the channel and the validator and handles closing both.
public static RandomAccessReader open(File file, File crcFile) throws IOException
{
ChannelProxy channel = new ChannelProxy(file);
@@ -33,7 +34,6 @@ public final class ChecksummedRandomAccessReader
RandomAccessReader.open(crcFile),
file.getPath());
Rebufferer rebufferer = new ChecksummedRebufferer(channel, validator);
- // Always own and close the channel.
return new RandomAccessReader.RandomAccessReaderWithOwnChannel(rebufferer);
}
catch (Throwable t)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/05660a5a/src/java/org/apache/cassandra/io/util/ChecksummedRebufferer.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/io/util/ChecksummedRebufferer.java b/src/java/org/apache/cassandra/io/util/ChecksummedRebufferer.java
index bc8695f..99091d9 100644
--- a/src/java/org/apache/cassandra/io/util/ChecksummedRebufferer.java
+++ b/src/java/org/apache/cassandra/io/util/ChecksummedRebufferer.java
@@ -27,6 +27,7 @@ class ChecksummedRebufferer extends BufferManagingRebufferer
{
private final DataIntegrityMetadata.ChecksumValidator validator;
+ @SuppressWarnings("resource") // chunk reader is closed by super::close()
ChecksummedRebufferer(ChannelProxy channel, DataIntegrityMetadata.ChecksumValidator validator)
{
super(new SimpleChunkReader(channel, channel.size(), BufferType.ON_HEAP, validator.chunkSize));
http://git-wip-us.apache.org/repos/asf/cassandra/blob/05660a5a/src/java/org/apache/cassandra/io/util/DataOutputBuffer.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/io/util/DataOutputBuffer.java b/src/java/org/apache/cassandra/io/util/DataOutputBuffer.java
index 0d2423c..63f87ea 100644
--- a/src/java/org/apache/cassandra/io/util/DataOutputBuffer.java
+++ b/src/java/org/apache/cassandra/io/util/DataOutputBuffer.java
@@ -55,7 +55,20 @@ public class DataOutputBuffer extends BufferedDataOutputStreamPlus
{
protected DataOutputBuffer initialValue() throws Exception
{
- return new DataOutputBuffer();
+ return new DataOutputBuffer()
+ {
+ public void close()
+ {
+ if (buffer.capacity() <= MAX_RECYCLE_BUFFER_SIZE)
+ {
+ buffer.clear();
+ }
+ else
+ {
+ buffer = ByteBuffer.allocate(DEFAULT_INITIAL_BUFFER_SIZE);
+ }
+ }
+ };
}
};
@@ -74,18 +87,6 @@ public class DataOutputBuffer extends BufferedDataOutputStreamPlus
super(buffer);
}
- public void recycle()
- {
- if (buffer.capacity() <= MAX_RECYCLE_BUFFER_SIZE)
- {
- buffer.clear();
- }
- else
- {
- buffer = ByteBuffer.allocate(DEFAULT_INITIAL_BUFFER_SIZE);
- }
- }
-
@Override
public void flush() throws IOException
{
http://git-wip-us.apache.org/repos/asf/cassandra/blob/05660a5a/src/java/org/apache/cassandra/metrics/TableMetrics.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/metrics/TableMetrics.java b/src/java/org/apache/cassandra/metrics/TableMetrics.java
index f811873..c57f240 100644
--- a/src/java/org/apache/cassandra/metrics/TableMetrics.java
+++ b/src/java/org/apache/cassandra/metrics/TableMetrics.java
@@ -19,15 +19,14 @@ package org.apache.cassandra.metrics;
import java.nio.ByteBuffer;
import java.util.*;
-import java.util.concurrent.ConcurrentMap;
import java.util.concurrent.ConcurrentHashMap;
+import java.util.concurrent.ConcurrentMap;
import java.util.concurrent.TimeUnit;
-import com.codahale.metrics.*;
-import com.codahale.metrics.Timer;
-import com.google.common.collect.Iterables;
import com.google.common.collect.Maps;
+import com.codahale.metrics.*;
+import com.codahale.metrics.Timer;
import org.apache.cassandra.config.Schema;
import org.apache.cassandra.config.SchemaConstants;
import org.apache.cassandra.db.ColumnFamilyStore;
@@ -381,8 +380,9 @@ public class TableMetrics
{
public Double getValue()
{
- return computeCompressionRatio(Iterables.concat(Iterables.transform(Keyspace.all(),
- p -> p.getAllSSTables(SSTableSet.CANONICAL))));
+ List<SSTableReader> sstables = new ArrayList<>();
+ Keyspace.all().forEach(ks -> sstables.addAll(ks.getAllSSTables(SSTableSet.CANONICAL)));
+ return computeCompressionRatio(sstables);
}
});
percentRepaired = createTableGauge("PercentRepaired", new Gauge<Double>()
http://git-wip-us.apache.org/repos/asf/cassandra/blob/05660a5a/src/java/org/apache/cassandra/net/MessageOut.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/net/MessageOut.java b/src/java/org/apache/cassandra/net/MessageOut.java
index a088335..4f41ee5 100644
--- a/src/java/org/apache/cassandra/net/MessageOut.java
+++ b/src/java/org/apache/cassandra/net/MessageOut.java
@@ -115,8 +115,7 @@ public class MessageOut<T>
if (payload != null)
{
- DataOutputBuffer dob = DataOutputBuffer.scratchBuffer.get();
- try
+ try(DataOutputBuffer dob = DataOutputBuffer.scratchBuffer.get())
{
serializer.serialize(payload, dob, version);
@@ -124,10 +123,6 @@ public class MessageOut<T>
out.writeInt(size);
out.write(dob.getData(), 0, size);
}
- finally
- {
- dob.recycle();
- }
}
else
{
http://git-wip-us.apache.org/repos/asf/cassandra/blob/05660a5a/src/java/org/apache/cassandra/security/EncryptionUtils.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/security/EncryptionUtils.java b/src/java/org/apache/cassandra/security/EncryptionUtils.java
index b262259..bb61260 100644
--- a/src/java/org/apache/cassandra/security/EncryptionUtils.java
+++ b/src/java/org/apache/cassandra/security/EncryptionUtils.java
@@ -114,6 +114,7 @@ public class EncryptionUtils
return outputBuffer;
}
+ @SuppressWarnings("resource")
public static ByteBuffer encrypt(ByteBuffer inputBuffer, ByteBuffer outputBuffer, boolean allowBufferResize, Cipher cipher) throws IOException
{
Preconditions.checkNotNull(outputBuffer, "output buffer may not be null");
@@ -165,6 +166,7 @@ public class EncryptionUtils
}
// path used when decrypting commit log files
+ @SuppressWarnings("resource")
public static ByteBuffer decrypt(FileDataInput fileDataInput, ByteBuffer outputBuffer, boolean allowBufferResize, Cipher cipher) throws IOException
{
return decrypt(new DataInputReadChannel(fileDataInput), outputBuffer, allowBufferResize, cipher);
[8/9] cassandra git commit: Merge branch 'cassandra-3.0' into trunk
Posted by sa...@apache.org.
Merge branch 'cassandra-3.0' into trunk
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/b834aed5
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/b834aed5
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/b834aed5
Branch: refs/heads/trunk
Commit: b834aed5c09a1e06094c15382f3bc00dface4ab0
Parents: d34c15b 0fd07e8
Author: Sam Tunnicliffe <sa...@beobal.com>
Authored: Fri Aug 26 10:51:15 2016 +0100
Committer: Sam Tunnicliffe <sa...@beobal.com>
Committed: Fri Aug 26 10:51:15 2016 +0100
----------------------------------------------------------------------
.../db/compaction/TimeWindowCompactionStrategy.java | 3 +++
src/java/org/apache/cassandra/tools/SSTableExport.java | 11 +++++++----
2 files changed, 10 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/b834aed5/src/java/org/apache/cassandra/db/compaction/TimeWindowCompactionStrategy.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/b834aed5/src/java/org/apache/cassandra/tools/SSTableExport.java
----------------------------------------------------------------------