You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by jb...@apache.org on 2014/08/07 16:28:01 UTC

[1/9] git commit: Avoid logging CompactionInterrupted at ERROR patch by marcuse; reviewed by jbellis for CASSANDRA-7694

Repository: cassandra
Updated Branches:
  refs/heads/cassandra-2.1 ddda54145 -> e682ffc47
  refs/heads/trunk 46193d754 -> 56141aee8


Avoid logging CompactionInterrupted at ERROR
patch by marcuse; reviewed by jbellis for CASSANDRA-7694


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/6e6a6c39
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/6e6a6c39
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/6e6a6c39

Branch: refs/heads/cassandra-2.1
Commit: 6e6a6c39794a06dfdaf7c5499e58b532188e7896
Parents: f3f69cb
Author: Jonathan Ellis <jb...@apache.org>
Authored: Thu Aug 7 09:21:30 2014 -0500
Committer: Jonathan Ellis <jb...@apache.org>
Committed: Thu Aug 7 09:21:30 2014 -0500

----------------------------------------------------------------------
 CHANGES.txt                                                  | 1 +
 .../cassandra/concurrent/DebuggableThreadPoolExecutor.java   | 8 ++++++--
 .../apache/cassandra/db/compaction/CompactionManager.java    | 4 ++--
 3 files changed, 9 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/6e6a6c39/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 4392159..915aeea 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
 2.0.10
+ * Avoid logging CompactionInterrupted at ERROR (CASSANDRA-7694)
  * Minor leak in sstable2jon (CASSANDRA-7709)
  * Add cassandra.auto_bootstrap system property (CASSANDRA-7650)
  * Remove CqlPagingRecordReader/CqlPagingInputFormat (CASSANDRA-7570)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/6e6a6c39/src/java/org/apache/cassandra/concurrent/DebuggableThreadPoolExecutor.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/concurrent/DebuggableThreadPoolExecutor.java b/src/java/org/apache/cassandra/concurrent/DebuggableThreadPoolExecutor.java
index 665f0b0..8e4dc7a 100644
--- a/src/java/org/apache/cassandra/concurrent/DebuggableThreadPoolExecutor.java
+++ b/src/java/org/apache/cassandra/concurrent/DebuggableThreadPoolExecutor.java
@@ -172,6 +172,12 @@ public class DebuggableThreadPoolExecutor extends ThreadPoolExecutor implements
     {
         super.afterExecute(r, t);
 
+        maybeResetTraceSessionWrapper(r);
+        logExceptionsAfterExecute(r, t);
+    }
+
+    protected static void maybeResetTraceSessionWrapper(Runnable r)
+    {
         if (r instanceof TraceSessionWrapper)
         {
             TraceSessionWrapper tsw = (TraceSessionWrapper) r;
@@ -179,8 +185,6 @@ public class DebuggableThreadPoolExecutor extends ThreadPoolExecutor implements
             // and if left this thread might start tracing unrelated tasks
             tsw.reset();
         }
-        
-        logExceptionsAfterExecute(r, t);
     }
 
     @Override

http://git-wip-us.apache.org/repos/asf/cassandra/blob/6e6a6c39/src/java/org/apache/cassandra/db/compaction/CompactionManager.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/compaction/CompactionManager.java b/src/java/org/apache/cassandra/db/compaction/CompactionManager.java
index 2708e4c..e804f1d 100644
--- a/src/java/org/apache/cassandra/db/compaction/CompactionManager.java
+++ b/src/java/org/apache/cassandra/db/compaction/CompactionManager.java
@@ -956,8 +956,8 @@ public class CompactionManager implements CompactionManagerMBean
         @Override
         public void afterExecute(Runnable r, Throwable t)
         {
-            super.afterExecute(r, t);
-
+            DebuggableThreadPoolExecutor.maybeResetTraceSessionWrapper(r);
+    
             if (t == null)
                 t = DebuggableThreadPoolExecutor.extractThrowable(r);
 


[9/9] git commit: merge

Posted by jb...@apache.org.
merge


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/56141aee
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/56141aee
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/56141aee

Branch: refs/heads/trunk
Commit: 56141aee857eb81109531b92029bd827e6976d76
Parents: f95b40c 46193d7
Author: Jonathan Ellis <jb...@apache.org>
Authored: Thu Aug 7 09:27:54 2014 -0500
Committer: Jonathan Ellis <jb...@apache.org>
Committed: Thu Aug 7 09:27:54 2014 -0500

----------------------------------------------------------------------

----------------------------------------------------------------------



[7/9] git commit: Merge branch 'cassandra-2.1' into trunk

Posted by jb...@apache.org.
Merge branch 'cassandra-2.1' into trunk


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/f95b40c1
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/f95b40c1
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/f95b40c1

Branch: refs/heads/trunk
Commit: f95b40c1de385108b47e5aa32c0057c120e2ac03
Parents: 17055bf 24d8571
Author: Jonathan Ellis <jb...@apache.org>
Authored: Thu Aug 7 09:25:25 2014 -0500
Committer: Jonathan Ellis <jb...@apache.org>
Committed: Thu Aug 7 09:25:25 2014 -0500

----------------------------------------------------------------------
 CHANGES.txt                                     |   2 +
 .../DebuggableThreadPoolExecutor.java           |   8 +-
 .../db/compaction/CompactionManager.java        |   4 +-
 .../apache/cassandra/tools/SSTableExport.java   | 131 +++++++++++--------
 4 files changed, 83 insertions(+), 62 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/f95b40c1/CHANGES.txt
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/cassandra/blob/f95b40c1/src/java/org/apache/cassandra/db/compaction/CompactionManager.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/cassandra/blob/f95b40c1/src/java/org/apache/cassandra/tools/SSTableExport.java
----------------------------------------------------------------------


[8/9] git commit: merge

Posted by jb...@apache.org.
merge


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/e682ffc4
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/e682ffc4
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/e682ffc4

Branch: refs/heads/cassandra-2.1
Commit: e682ffc4700ddd57a1a961c8d7fbbb3a87d89ff9
Parents: 24d8571 ddda541
Author: Jonathan Ellis <jb...@apache.org>
Authored: Thu Aug 7 09:27:14 2014 -0500
Committer: Jonathan Ellis <jb...@apache.org>
Committed: Thu Aug 7 09:27:14 2014 -0500

----------------------------------------------------------------------

----------------------------------------------------------------------



[2/9] git commit: Avoid logging CompactionInterrupted at ERROR patch by marcuse; reviewed by jbellis for CASSANDRA-7694

Posted by jb...@apache.org.
Avoid logging CompactionInterrupted at ERROR
patch by marcuse; reviewed by jbellis for CASSANDRA-7694


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/6e6a6c39
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/6e6a6c39
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/6e6a6c39

Branch: refs/heads/trunk
Commit: 6e6a6c39794a06dfdaf7c5499e58b532188e7896
Parents: f3f69cb
Author: Jonathan Ellis <jb...@apache.org>
Authored: Thu Aug 7 09:21:30 2014 -0500
Committer: Jonathan Ellis <jb...@apache.org>
Committed: Thu Aug 7 09:21:30 2014 -0500

----------------------------------------------------------------------
 CHANGES.txt                                                  | 1 +
 .../cassandra/concurrent/DebuggableThreadPoolExecutor.java   | 8 ++++++--
 .../apache/cassandra/db/compaction/CompactionManager.java    | 4 ++--
 3 files changed, 9 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/6e6a6c39/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 4392159..915aeea 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
 2.0.10
+ * Avoid logging CompactionInterrupted at ERROR (CASSANDRA-7694)
  * Minor leak in sstable2jon (CASSANDRA-7709)
  * Add cassandra.auto_bootstrap system property (CASSANDRA-7650)
  * Remove CqlPagingRecordReader/CqlPagingInputFormat (CASSANDRA-7570)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/6e6a6c39/src/java/org/apache/cassandra/concurrent/DebuggableThreadPoolExecutor.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/concurrent/DebuggableThreadPoolExecutor.java b/src/java/org/apache/cassandra/concurrent/DebuggableThreadPoolExecutor.java
index 665f0b0..8e4dc7a 100644
--- a/src/java/org/apache/cassandra/concurrent/DebuggableThreadPoolExecutor.java
+++ b/src/java/org/apache/cassandra/concurrent/DebuggableThreadPoolExecutor.java
@@ -172,6 +172,12 @@ public class DebuggableThreadPoolExecutor extends ThreadPoolExecutor implements
     {
         super.afterExecute(r, t);
 
+        maybeResetTraceSessionWrapper(r);
+        logExceptionsAfterExecute(r, t);
+    }
+
+    protected static void maybeResetTraceSessionWrapper(Runnable r)
+    {
         if (r instanceof TraceSessionWrapper)
         {
             TraceSessionWrapper tsw = (TraceSessionWrapper) r;
@@ -179,8 +185,6 @@ public class DebuggableThreadPoolExecutor extends ThreadPoolExecutor implements
             // and if left this thread might start tracing unrelated tasks
             tsw.reset();
         }
-        
-        logExceptionsAfterExecute(r, t);
     }
 
     @Override

http://git-wip-us.apache.org/repos/asf/cassandra/blob/6e6a6c39/src/java/org/apache/cassandra/db/compaction/CompactionManager.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/compaction/CompactionManager.java b/src/java/org/apache/cassandra/db/compaction/CompactionManager.java
index 2708e4c..e804f1d 100644
--- a/src/java/org/apache/cassandra/db/compaction/CompactionManager.java
+++ b/src/java/org/apache/cassandra/db/compaction/CompactionManager.java
@@ -956,8 +956,8 @@ public class CompactionManager implements CompactionManagerMBean
         @Override
         public void afterExecute(Runnable r, Throwable t)
         {
-            super.afterExecute(r, t);
-
+            DebuggableThreadPoolExecutor.maybeResetTraceSessionWrapper(r);
+    
             if (t == null)
                 t = DebuggableThreadPoolExecutor.extractThrowable(r);
 


[5/9] git commit: merge from 2.1.0

Posted by jb...@apache.org.
merge from 2.1.0


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/24d85715
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/24d85715
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/24d85715

Branch: refs/heads/cassandra-2.1
Commit: 24d85715045fb32b4fb59341c3eec18502a7d979
Parents: 78b734e 33de6dc
Author: Jonathan Ellis <jb...@apache.org>
Authored: Thu Aug 7 09:25:17 2014 -0500
Committer: Jonathan Ellis <jb...@apache.org>
Committed: Thu Aug 7 09:25:17 2014 -0500

----------------------------------------------------------------------
 CHANGES.txt                                     |   2 +
 .../DebuggableThreadPoolExecutor.java           |   8 +-
 .../db/compaction/CompactionManager.java        |   4 +-
 .../apache/cassandra/tools/SSTableExport.java   | 131 +++++++++++--------
 4 files changed, 83 insertions(+), 62 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/24d85715/CHANGES.txt
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/cassandra/blob/24d85715/src/java/org/apache/cassandra/db/compaction/CompactionManager.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/cassandra/blob/24d85715/src/java/org/apache/cassandra/tools/SSTableExport.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/tools/SSTableExport.java
index c4d693c,3572296..cc725a4
--- a/src/java/org/apache/cassandra/tools/SSTableExport.java
+++ b/src/java/org/apache/cassandra/tools/SSTableExport.java
@@@ -226,20 -228,26 +226,26 @@@ public class SSTableExpor
      throws IOException
      {
          KeyIterator iter = new KeyIterator(desc);
-         DecoratedKey lastKey = null;
-         while (iter.hasNext())
+         try
          {
-             DecoratedKey key = iter.next();
- 
-             // validate order of the keys in the sstable
-             if (lastKey != null && lastKey.compareTo(key) > 0)
-                 throw new IOException("Key out of order! " + lastKey + " > " + key);
-             lastKey = key;
- 
-             outs.println(metadata.getKeyValidator().getString(key.getKey()));
-             checkStream(outs); // flushes
+             DecoratedKey lastKey = null;
+             while (iter.hasNext())
+             {
+                 DecoratedKey key = iter.next();
+ 
+                 // validate order of the keys in the sstable
+                 if (lastKey != null && lastKey.compareTo(key) > 0)
+                     throw new IOException("Key out of order! " + lastKey + " > " + key);
+                 lastKey = key;
+ 
 -                outs.println(bytesToHex(key.getKey()));
++                outs.println(metadata.getKeyValidator().getString(key.getKey()));
+                 checkStream(outs); // flushes
+             }
+         }
+         finally
+         {
+             iter.close();
          }
-         iter.close();
      }
  
      /**
@@@ -256,47 -263,53 +262,53 @@@
      {
          SSTableReader sstable = SSTableReader.open(desc);
          RandomAccessReader dfile = sstable.openDataReader();
+         try
+         {
+             IPartitioner<?> partitioner = sstable.partitioner;
  
-         IPartitioner<?> partitioner = sstable.partitioner;
+             if (excludes != null)
+                 toExport.removeAll(Arrays.asList(excludes));
  
-         if (excludes != null)
-             toExport.removeAll(Arrays.asList(excludes));
+             outs.println("[");
  
-         outs.println("[");
+             int i = 0;
  
-         int i = 0;
+             // last key to compare order
+             DecoratedKey lastKey = null;
  
-         // last key to compare order
-         DecoratedKey lastKey = null;
+             for (String key : toExport)
+             {
 -                DecoratedKey decoratedKey = partitioner.decorateKey(hexToBytes(key));
++                DecoratedKey decoratedKey = partitioner.decorateKey(metadata.getKeyValidator().fromString(key));
  
-         for (String key : toExport)
-         {
-             DecoratedKey decoratedKey = partitioner.decorateKey(metadata.getKeyValidator().fromString(key));
+                 if (lastKey != null && lastKey.compareTo(decoratedKey) > 0)
+                     throw new IOException("Key out of order! " + lastKey + " > " + decoratedKey);
  
-             if (lastKey != null && lastKey.compareTo(decoratedKey) > 0)
-                 throw new IOException("Key out of order! " + lastKey + " > " + decoratedKey);
+                 lastKey = decoratedKey;
  
-             lastKey = decoratedKey;
+                 RowIndexEntry entry = sstable.getPosition(decoratedKey, SSTableReader.Operator.EQ);
+                 if (entry == null)
+                     continue;
  
-             RowIndexEntry entry = sstable.getPosition(decoratedKey, SSTableReader.Operator.EQ);
-             if (entry == null)
-                 continue;
+                 dfile.seek(entry.position);
+                 ByteBufferUtil.readWithShortLength(dfile); // row key
+                 DeletionInfo deletionInfo = new DeletionInfo(DeletionTime.serializer.deserialize(dfile));
  
-             dfile.seek(entry.position);
-             ByteBufferUtil.readWithShortLength(dfile); // row key
-             DeletionInfo deletionInfo = new DeletionInfo(DeletionTime.serializer.deserialize(dfile));
-             Iterator<OnDiskAtom> atomIterator = sstable.metadata.getOnDiskIterator(dfile, sstable.descriptor.version);
+                 Iterator<OnDiskAtom> atomIterator = sstable.metadata.getOnDiskIterator(dfile, sstable.descriptor.version);
+                 checkStream(outs);
  
-             checkStream(outs);
+                 if (i != 0)
+                     outs.println(",");
+                 i++;
+                 serializeRow(deletionInfo, atomIterator, sstable.metadata, decoratedKey, outs);
+             }
  
-             if (i != 0)
-                 outs.println(",");
-             i++;
-             serializeRow(deletionInfo, atomIterator, sstable.metadata, decoratedKey, outs);
+             outs.println("\n]");
+             outs.flush();
+         }
+         finally
+         {
+             dfile.close();
          }
- 
-         outs.println("\n]");
-         outs.flush();
      }
  
      // This is necessary to accommodate the test suite since you cannot open a Reader more
@@@ -308,36 -321,39 +320,39 @@@
          if (excludes != null)
              excludeSet = new HashSet<String>(Arrays.asList(excludes));
  
- 
          SSTableIdentityIterator row;
          SSTableScanner scanner = reader.getScanner();
+         try
+         {
+             outs.println("[");
  
-         outs.println("[");
+             int i = 0;
  
-         int i = 0;
+             // collecting keys to export
+             while (scanner.hasNext())
+             {
+                 row = (SSTableIdentityIterator) scanner.next();
  
-         // collecting keys to export
-         while (scanner.hasNext())
-         {
-             row = (SSTableIdentityIterator) scanner.next();
 -                String currentKey = bytesToHex(row.getKey().getKey());
++                String currentKey = row.getColumnFamily().metadata().getKeyValidator().getString(row.getKey().getKey());
  
-             String currentKey = row.getColumnFamily().metadata().getKeyValidator().getString(row.getKey().getKey());
+                 if (excludeSet.contains(currentKey))
+                     continue;
+                 else if (i != 0)
+                     outs.println(",");
  
-             if (excludeSet.contains(currentKey))
-                 continue;
-             else if (i != 0)
-                 outs.println(",");
+                 serializeRow(row, row.getKey(), outs);
+                 checkStream(outs);
  
-             serializeRow(row, row.getKey(), outs);
-             checkStream(outs);
+                 i++;
+             }
  
-             i++;
+             outs.println("\n]");
+             outs.flush();
+         }
+         finally
+         {
+             scanner.close();
          }
- 
-         outs.println("\n]");
-         outs.flush();
- 
-         scanner.close();
      }
  
      /**


[6/9] git commit: merge from 2.1.0

Posted by jb...@apache.org.
merge from 2.1.0


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/24d85715
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/24d85715
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/24d85715

Branch: refs/heads/trunk
Commit: 24d85715045fb32b4fb59341c3eec18502a7d979
Parents: 78b734e 33de6dc
Author: Jonathan Ellis <jb...@apache.org>
Authored: Thu Aug 7 09:25:17 2014 -0500
Committer: Jonathan Ellis <jb...@apache.org>
Committed: Thu Aug 7 09:25:17 2014 -0500

----------------------------------------------------------------------
 CHANGES.txt                                     |   2 +
 .../DebuggableThreadPoolExecutor.java           |   8 +-
 .../db/compaction/CompactionManager.java        |   4 +-
 .../apache/cassandra/tools/SSTableExport.java   | 131 +++++++++++--------
 4 files changed, 83 insertions(+), 62 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/24d85715/CHANGES.txt
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/cassandra/blob/24d85715/src/java/org/apache/cassandra/db/compaction/CompactionManager.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/cassandra/blob/24d85715/src/java/org/apache/cassandra/tools/SSTableExport.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/tools/SSTableExport.java
index c4d693c,3572296..cc725a4
--- a/src/java/org/apache/cassandra/tools/SSTableExport.java
+++ b/src/java/org/apache/cassandra/tools/SSTableExport.java
@@@ -226,20 -228,26 +226,26 @@@ public class SSTableExpor
      throws IOException
      {
          KeyIterator iter = new KeyIterator(desc);
-         DecoratedKey lastKey = null;
-         while (iter.hasNext())
+         try
          {
-             DecoratedKey key = iter.next();
- 
-             // validate order of the keys in the sstable
-             if (lastKey != null && lastKey.compareTo(key) > 0)
-                 throw new IOException("Key out of order! " + lastKey + " > " + key);
-             lastKey = key;
- 
-             outs.println(metadata.getKeyValidator().getString(key.getKey()));
-             checkStream(outs); // flushes
+             DecoratedKey lastKey = null;
+             while (iter.hasNext())
+             {
+                 DecoratedKey key = iter.next();
+ 
+                 // validate order of the keys in the sstable
+                 if (lastKey != null && lastKey.compareTo(key) > 0)
+                     throw new IOException("Key out of order! " + lastKey + " > " + key);
+                 lastKey = key;
+ 
 -                outs.println(bytesToHex(key.getKey()));
++                outs.println(metadata.getKeyValidator().getString(key.getKey()));
+                 checkStream(outs); // flushes
+             }
+         }
+         finally
+         {
+             iter.close();
          }
-         iter.close();
      }
  
      /**
@@@ -256,47 -263,53 +262,53 @@@
      {
          SSTableReader sstable = SSTableReader.open(desc);
          RandomAccessReader dfile = sstable.openDataReader();
+         try
+         {
+             IPartitioner<?> partitioner = sstable.partitioner;
  
-         IPartitioner<?> partitioner = sstable.partitioner;
+             if (excludes != null)
+                 toExport.removeAll(Arrays.asList(excludes));
  
-         if (excludes != null)
-             toExport.removeAll(Arrays.asList(excludes));
+             outs.println("[");
  
-         outs.println("[");
+             int i = 0;
  
-         int i = 0;
+             // last key to compare order
+             DecoratedKey lastKey = null;
  
-         // last key to compare order
-         DecoratedKey lastKey = null;
+             for (String key : toExport)
+             {
 -                DecoratedKey decoratedKey = partitioner.decorateKey(hexToBytes(key));
++                DecoratedKey decoratedKey = partitioner.decorateKey(metadata.getKeyValidator().fromString(key));
  
-         for (String key : toExport)
-         {
-             DecoratedKey decoratedKey = partitioner.decorateKey(metadata.getKeyValidator().fromString(key));
+                 if (lastKey != null && lastKey.compareTo(decoratedKey) > 0)
+                     throw new IOException("Key out of order! " + lastKey + " > " + decoratedKey);
  
-             if (lastKey != null && lastKey.compareTo(decoratedKey) > 0)
-                 throw new IOException("Key out of order! " + lastKey + " > " + decoratedKey);
+                 lastKey = decoratedKey;
  
-             lastKey = decoratedKey;
+                 RowIndexEntry entry = sstable.getPosition(decoratedKey, SSTableReader.Operator.EQ);
+                 if (entry == null)
+                     continue;
  
-             RowIndexEntry entry = sstable.getPosition(decoratedKey, SSTableReader.Operator.EQ);
-             if (entry == null)
-                 continue;
+                 dfile.seek(entry.position);
+                 ByteBufferUtil.readWithShortLength(dfile); // row key
+                 DeletionInfo deletionInfo = new DeletionInfo(DeletionTime.serializer.deserialize(dfile));
  
-             dfile.seek(entry.position);
-             ByteBufferUtil.readWithShortLength(dfile); // row key
-             DeletionInfo deletionInfo = new DeletionInfo(DeletionTime.serializer.deserialize(dfile));
-             Iterator<OnDiskAtom> atomIterator = sstable.metadata.getOnDiskIterator(dfile, sstable.descriptor.version);
+                 Iterator<OnDiskAtom> atomIterator = sstable.metadata.getOnDiskIterator(dfile, sstable.descriptor.version);
+                 checkStream(outs);
  
-             checkStream(outs);
+                 if (i != 0)
+                     outs.println(",");
+                 i++;
+                 serializeRow(deletionInfo, atomIterator, sstable.metadata, decoratedKey, outs);
+             }
  
-             if (i != 0)
-                 outs.println(",");
-             i++;
-             serializeRow(deletionInfo, atomIterator, sstable.metadata, decoratedKey, outs);
+             outs.println("\n]");
+             outs.flush();
+         }
+         finally
+         {
+             dfile.close();
          }
- 
-         outs.println("\n]");
-         outs.flush();
      }
  
      // This is necessary to accommodate the test suite since you cannot open a Reader more
@@@ -308,36 -321,39 +320,39 @@@
          if (excludes != null)
              excludeSet = new HashSet<String>(Arrays.asList(excludes));
  
- 
          SSTableIdentityIterator row;
          SSTableScanner scanner = reader.getScanner();
+         try
+         {
+             outs.println("[");
  
-         outs.println("[");
+             int i = 0;
  
-         int i = 0;
+             // collecting keys to export
+             while (scanner.hasNext())
+             {
+                 row = (SSTableIdentityIterator) scanner.next();
  
-         // collecting keys to export
-         while (scanner.hasNext())
-         {
-             row = (SSTableIdentityIterator) scanner.next();
 -                String currentKey = bytesToHex(row.getKey().getKey());
++                String currentKey = row.getColumnFamily().metadata().getKeyValidator().getString(row.getKey().getKey());
  
-             String currentKey = row.getColumnFamily().metadata().getKeyValidator().getString(row.getKey().getKey());
+                 if (excludeSet.contains(currentKey))
+                     continue;
+                 else if (i != 0)
+                     outs.println(",");
  
-             if (excludeSet.contains(currentKey))
-                 continue;
-             else if (i != 0)
-                 outs.println(",");
+                 serializeRow(row, row.getKey(), outs);
+                 checkStream(outs);
  
-             serializeRow(row, row.getKey(), outs);
-             checkStream(outs);
+                 i++;
+             }
  
-             i++;
+             outs.println("\n]");
+             outs.flush();
+         }
+         finally
+         {
+             scanner.close();
          }
- 
-         outs.println("\n]");
-         outs.flush();
- 
-         scanner.close();
      }
  
      /**


[4/9] git commit: merge from 2.0

Posted by jb...@apache.org.
merge from 2.0


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/33de6dc1
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/33de6dc1
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/33de6dc1

Branch: refs/heads/trunk
Commit: 33de6dc112c7a1e7ebc84bf6079a7768d7d94492
Parents: eea547c 6e6a6c3
Author: Jonathan Ellis <jb...@apache.org>
Authored: Thu Aug 7 09:21:59 2014 -0500
Committer: Jonathan Ellis <jb...@apache.org>
Committed: Thu Aug 7 09:21:59 2014 -0500

----------------------------------------------------------------------
 CHANGES.txt                                                  | 1 +
 .../cassandra/concurrent/DebuggableThreadPoolExecutor.java   | 8 ++++++--
 .../apache/cassandra/db/compaction/CompactionManager.java    | 4 ++--
 3 files changed, 9 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/33de6dc1/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index 1043016,915aeea..dfeca21
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,71 -1,18 +1,72 @@@
 -2.0.10
 +2.1.0-final
 + * cqlsh DESC CLUSTER fails retrieving ring information (CASSANDRA-7687)
 + * Fix binding null values inside UDT (CASSANDRA-7685)
 + * Fix UDT field selection with empty fields (CASSANDRA-7670)
 + * Bogus deserialization of static cells from sstable (CASSANDRA-7684)
 +Merged from 2.0:
+  * Avoid logging CompactionInterrupted at ERROR (CASSANDRA-7694)
   * Minor leak in sstable2jon (CASSANDRA-7709)
   * Add cassandra.auto_bootstrap system property (CASSANDRA-7650)
 - * Remove CqlPagingRecordReader/CqlPagingInputFormat (CASSANDRA-7570)
 - * Fix IncompatibleClassChangeError from hadoop2 (CASSANDRA-7229)
 - * Add 'nodetool sethintedhandoffthrottlekb' (CASSANDRA-7635)
   * Update java driver (for hadoop) (CASSANDRA-7618)
 - * Fix truncate to always flush (CASSANDRA-7511)
 + * Remove CqlPagingRecordReader/CqlPagingInputFormat (CASSANDRA-7570)
 + * Support connecting to ipv6 jmx with nodetool (CASSANDRA-7669)
 +
 +
 +2.1.0-rc5
 + * Reject counters inside user types (CASSANDRA-7672)
 + * Switch to notification-based GCInspector (CASSANDRA-7638)
 + * (cqlsh) Handle nulls in UDTs and tuples correctly (CASSANDRA-7656)
 + * Don't use strict consistency when replacing (CASSANDRA-7568)
 + * Fix min/max cell name collection on 2.0 SSTables with range
 +   tombstones (CASSANDRA-7593)
 + * Tolerate min/max cell names of different lengths (CASSANDRA-7651)
 + * Filter cached results correctly (CASSANDRA-7636)
 + * Fix tracing on the new SEPExecutor (CASSANDRA-7644)
   * Remove shuffle and taketoken (CASSANDRA-7601)
 - * Switch liveRatio-related log messages to DEBUG (CASSANDRA-7467)
 - * (cqlsh) Add tab-completion for CREATE/DROP USER IF [NOT] EXISTS (CASSANDRA-7611)
 - * Always merge ranges owned by a single node (CASSANDRA-6930)
 - * Pig support for hadoop CqlInputFormat (CASSANDRA-6454)
 + * Clean up Windows batch scripts (CASSANDRA-7619)
 + * Fix native protocol drop user type notification (CASSANDRA-7571)
 + * Give read access to system.schema_usertypes to all authenticated users
 +   (CASSANDRA-7578)
 + * (cqlsh) Fix cqlsh display when zero rows are returned (CASSANDRA-7580)
 + * Get java version correctly when JAVA_TOOL_OPTIONS is set (CASSANDRA-7572)
 + * Fix NPE when dropping index from non-existent keyspace, AssertionError when
 +   dropping non-existent index with IF EXISTS (CASSANDRA-7590)
 + * Fix sstablelevelresetter hang (CASSANDRA-7614)
 + * (cqlsh) Fix deserialization of blobs (CASSANDRA-7603)
 + * Use "keyspace updated" schema change message for UDT changes in v1 and
 +   v2 protocols (CASSANDRA-7617)
 + * Fix tracing of range slices and secondary index lookups that are local
 +   to the coordinator (CASSANDRA-7599)
 + * Set -Dcassandra.storagedir for all tool shell scripts (CASSANDRA-7587)
 + * Don't swap max/min col names when mutating sstable metadata (CASSANDRA-7596)
 + * (cqlsh) Correctly handle paged result sets (CASSANDRA-7625)
 + * (cqlsh) Improve waiting for a trace to complete (CASSANDRA-7626)
 + * Fix tracing of concurrent range slices and 2ary index queries (CASSANDRA-7626)
 + * Fix scrub against collection type (CASSANDRA-7665)
 +Merged from 2.0:
 + * Set gc_grace_seconds to seven days for system schema tables (CASSANDRA-7668)
 + * SimpleSeedProvider no longer caches seeds forever (CASSANDRA-7663)
 + * Always flush on truncate (CASSANDRA-7511)
   * Fix ReversedType(DateType) mapping to native protocol (CASSANDRA-7576)
 + * Always merge ranges owned by a single node (CASSANDRA-6930)
 + * Track max/min timestamps for range tombstones (CASSANDRA-7647)
 + * Fix NPE when listing saved caches dir (CASSANDRA-7632)
 +
 +
 +2.1.0-rc4
 + * Fix word count hadoop example (CASSANDRA-7200)
 + * Updated memtable_cleanup_threshold and memtable_flush_writers defaults 
 +   (CASSANDRA-7551)
 + * (Windows) fix startup when WMI memory query fails (CASSANDRA-7505)
 + * Anti-compaction proceeds if any part of the repair failed (CASANDRA-7521)
 + * Add missing table name to DROP INDEX responses and notifications (CASSANDRA-7539)
 + * Bump CQL version to 3.2.0 and update CQL documentation (CASSANDRA-7527)
 + * Fix configuration error message when running nodetool ring (CASSANDRA-7508)
 + * Support conditional updates, tuple type, and the v3 protocol in cqlsh (CASSANDRA-7509)
 + * Handle queries on multiple secondary index types (CASSANDRA-7525)
 + * Fix cqlsh authentication with v3 native protocol (CASSANDRA-7564)
 + * Fix NPE when unknown prepared statement ID is used (CASSANDRA-7454)
 +Merged from 2.0:
   * (Windows) force range-based repair to non-sequential mode (CASSANDRA-7541)
   * Fix range merging when DES scores are zero (CASSANDRA-7535)
   * Warn when SSL certificates have expired (CASSANDRA-7528)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/33de6dc1/src/java/org/apache/cassandra/concurrent/DebuggableThreadPoolExecutor.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/cassandra/blob/33de6dc1/src/java/org/apache/cassandra/db/compaction/CompactionManager.java
----------------------------------------------------------------------


[3/9] git commit: merge from 2.0

Posted by jb...@apache.org.
merge from 2.0


Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/33de6dc1
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/33de6dc1
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/33de6dc1

Branch: refs/heads/cassandra-2.1
Commit: 33de6dc112c7a1e7ebc84bf6079a7768d7d94492
Parents: eea547c 6e6a6c3
Author: Jonathan Ellis <jb...@apache.org>
Authored: Thu Aug 7 09:21:59 2014 -0500
Committer: Jonathan Ellis <jb...@apache.org>
Committed: Thu Aug 7 09:21:59 2014 -0500

----------------------------------------------------------------------
 CHANGES.txt                                                  | 1 +
 .../cassandra/concurrent/DebuggableThreadPoolExecutor.java   | 8 ++++++--
 .../apache/cassandra/db/compaction/CompactionManager.java    | 4 ++--
 3 files changed, 9 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/33de6dc1/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index 1043016,915aeea..dfeca21
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,71 -1,18 +1,72 @@@
 -2.0.10
 +2.1.0-final
 + * cqlsh DESC CLUSTER fails retrieving ring information (CASSANDRA-7687)
 + * Fix binding null values inside UDT (CASSANDRA-7685)
 + * Fix UDT field selection with empty fields (CASSANDRA-7670)
 + * Bogus deserialization of static cells from sstable (CASSANDRA-7684)
 +Merged from 2.0:
+  * Avoid logging CompactionInterrupted at ERROR (CASSANDRA-7694)
   * Minor leak in sstable2jon (CASSANDRA-7709)
   * Add cassandra.auto_bootstrap system property (CASSANDRA-7650)
 - * Remove CqlPagingRecordReader/CqlPagingInputFormat (CASSANDRA-7570)
 - * Fix IncompatibleClassChangeError from hadoop2 (CASSANDRA-7229)
 - * Add 'nodetool sethintedhandoffthrottlekb' (CASSANDRA-7635)
   * Update java driver (for hadoop) (CASSANDRA-7618)
 - * Fix truncate to always flush (CASSANDRA-7511)
 + * Remove CqlPagingRecordReader/CqlPagingInputFormat (CASSANDRA-7570)
 + * Support connecting to ipv6 jmx with nodetool (CASSANDRA-7669)
 +
 +
 +2.1.0-rc5
 + * Reject counters inside user types (CASSANDRA-7672)
 + * Switch to notification-based GCInspector (CASSANDRA-7638)
 + * (cqlsh) Handle nulls in UDTs and tuples correctly (CASSANDRA-7656)
 + * Don't use strict consistency when replacing (CASSANDRA-7568)
 + * Fix min/max cell name collection on 2.0 SSTables with range
 +   tombstones (CASSANDRA-7593)
 + * Tolerate min/max cell names of different lengths (CASSANDRA-7651)
 + * Filter cached results correctly (CASSANDRA-7636)
 + * Fix tracing on the new SEPExecutor (CASSANDRA-7644)
   * Remove shuffle and taketoken (CASSANDRA-7601)
 - * Switch liveRatio-related log messages to DEBUG (CASSANDRA-7467)
 - * (cqlsh) Add tab-completion for CREATE/DROP USER IF [NOT] EXISTS (CASSANDRA-7611)
 - * Always merge ranges owned by a single node (CASSANDRA-6930)
 - * Pig support for hadoop CqlInputFormat (CASSANDRA-6454)
 + * Clean up Windows batch scripts (CASSANDRA-7619)
 + * Fix native protocol drop user type notification (CASSANDRA-7571)
 + * Give read access to system.schema_usertypes to all authenticated users
 +   (CASSANDRA-7578)
 + * (cqlsh) Fix cqlsh display when zero rows are returned (CASSANDRA-7580)
 + * Get java version correctly when JAVA_TOOL_OPTIONS is set (CASSANDRA-7572)
 + * Fix NPE when dropping index from non-existent keyspace, AssertionError when
 +   dropping non-existent index with IF EXISTS (CASSANDRA-7590)
 + * Fix sstablelevelresetter hang (CASSANDRA-7614)
 + * (cqlsh) Fix deserialization of blobs (CASSANDRA-7603)
 + * Use "keyspace updated" schema change message for UDT changes in v1 and
 +   v2 protocols (CASSANDRA-7617)
 + * Fix tracing of range slices and secondary index lookups that are local
 +   to the coordinator (CASSANDRA-7599)
 + * Set -Dcassandra.storagedir for all tool shell scripts (CASSANDRA-7587)
 + * Don't swap max/min col names when mutating sstable metadata (CASSANDRA-7596)
 + * (cqlsh) Correctly handle paged result sets (CASSANDRA-7625)
 + * (cqlsh) Improve waiting for a trace to complete (CASSANDRA-7626)
 + * Fix tracing of concurrent range slices and 2ary index queries (CASSANDRA-7626)
 + * Fix scrub against collection type (CASSANDRA-7665)
 +Merged from 2.0:
 + * Set gc_grace_seconds to seven days for system schema tables (CASSANDRA-7668)
 + * SimpleSeedProvider no longer caches seeds forever (CASSANDRA-7663)
 + * Always flush on truncate (CASSANDRA-7511)
   * Fix ReversedType(DateType) mapping to native protocol (CASSANDRA-7576)
 + * Always merge ranges owned by a single node (CASSANDRA-6930)
 + * Track max/min timestamps for range tombstones (CASSANDRA-7647)
 + * Fix NPE when listing saved caches dir (CASSANDRA-7632)
 +
 +
 +2.1.0-rc4
 + * Fix word count hadoop example (CASSANDRA-7200)
 + * Updated memtable_cleanup_threshold and memtable_flush_writers defaults 
 +   (CASSANDRA-7551)
 + * (Windows) fix startup when WMI memory query fails (CASSANDRA-7505)
 + * Anti-compaction proceeds if any part of the repair failed (CASANDRA-7521)
 + * Add missing table name to DROP INDEX responses and notifications (CASSANDRA-7539)
 + * Bump CQL version to 3.2.0 and update CQL documentation (CASSANDRA-7527)
 + * Fix configuration error message when running nodetool ring (CASSANDRA-7508)
 + * Support conditional updates, tuple type, and the v3 protocol in cqlsh (CASSANDRA-7509)
 + * Handle queries on multiple secondary index types (CASSANDRA-7525)
 + * Fix cqlsh authentication with v3 native protocol (CASSANDRA-7564)
 + * Fix NPE when unknown prepared statement ID is used (CASSANDRA-7454)
 +Merged from 2.0:
   * (Windows) force range-based repair to non-sequential mode (CASSANDRA-7541)
   * Fix range merging when DES scores are zero (CASSANDRA-7535)
   * Warn when SSL certificates have expired (CASSANDRA-7528)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/33de6dc1/src/java/org/apache/cassandra/concurrent/DebuggableThreadPoolExecutor.java
----------------------------------------------------------------------

http://git-wip-us.apache.org/repos/asf/cassandra/blob/33de6dc1/src/java/org/apache/cassandra/db/compaction/CompactionManager.java
----------------------------------------------------------------------