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 2013/09/12 13:41:15 UTC

[01/12] git commit: Fix possible divide-by-zero in HHOM patch by jbellis for CASSANDRA-5990

Updated Branches:
  refs/heads/cassandra-1.2 f5618e36d -> 394b35edf
  refs/heads/cassandra-2.0 7f117da0c -> 7bde2454d
  refs/heads/trunk 4f119341e -> 03f3642b1


Fix possible divide-by-zero in HHOM
patch by jbellis for CASSANDRA-5990


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

Branch: refs/heads/cassandra-1.2
Commit: 8cc28a1477e19545bd0f6dca9180c937f9c85c8d
Parents: f5618e3
Author: Jonathan Ellis <jb...@apache.org>
Authored: Thu Sep 12 13:21:20 2013 +0200
Committer: Jonathan Ellis <jb...@apache.org>
Committed: Thu Sep 12 13:21:37 2013 +0200

----------------------------------------------------------------------
 CHANGES.txt                                                | 1 +
 src/java/org/apache/cassandra/db/HintedHandOffManager.java | 5 +++--
 2 files changed, 4 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/8cc28a14/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index e420a7b..6ece609 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
 1.2.10
+ * Fix possible divide-by-zero in HHOM (CASSANDRA-5990)
  * Allow local batchlog writes for CL.ANY (CASSANDRA-5967)
  * Optimize name query performance in wide rows (CASSANDRA-5966)
  * Upgrade metrics-core to version 2.2.0 (CASSANDRA-5947)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/8cc28a14/src/java/org/apache/cassandra/db/HintedHandOffManager.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/HintedHandOffManager.java b/src/java/org/apache/cassandra/db/HintedHandOffManager.java
index 5ca32c3..c333359 100644
--- a/src/java/org/apache/cassandra/db/HintedHandOffManager.java
+++ b/src/java/org/apache/cassandra/db/HintedHandOffManager.java
@@ -436,9 +436,10 @@ public class HintedHandOffManager implements HintedHandOffManagerMBean
     private int calculatePageSize()
     {
         // read less columns (mutations) per page if they are very large
-        if (hintStore.getMeanColumns() > 0)
+        int meanColumnCount = hintStore.getMeanColumns();
+        if (meanColumnCount > 0)
         {
-            int averageColumnSize = (int) (hintStore.getMeanRowSize() / hintStore.getMeanColumns());
+            int averageColumnSize = (int) (hintStore.getMeanRowSize() / meanColumnCount);
             // page size of 1 does not allow actual paging b/c of >= behavior on startColumn
             return Math.max(2, Math.min(PAGE_SIZE, DatabaseDescriptor.getInMemoryCompactionLimit() / averageColumnSize));
         }


[04/12] git commit: merge from 1.2

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


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

Branch: refs/heads/cassandra-2.0
Commit: 69c9e031ee1aa8b96f29ac47ab5e8b79b5c2ac0f
Parents: 7f117da 8cc28a1
Author: Jonathan Ellis <jb...@apache.org>
Authored: Thu Sep 12 13:22:00 2013 +0200
Committer: Jonathan Ellis <jb...@apache.org>
Committed: Thu Sep 12 13:22:00 2013 +0200

----------------------------------------------------------------------
 CHANGES.txt                                                | 1 +
 src/java/org/apache/cassandra/db/HintedHandOffManager.java | 5 +++--
 2 files changed, 4 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/69c9e031/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index 68829d8,6ece609..6807039
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,19 -1,5 +1,20 @@@
 -1.2.10
 +2.0.1
 + * Improve error message when yaml contains invalid properties (CASSANDRA-5958)
 + * Improve leveled compaction's ability to find non-overlapping L0 compactions
 +   to work on concurrently (CASSANDRA-5921)
 + * Notify indexer of columns shadowed by range tombstones (CASSANDRA-5614)
 + * Log Merkle tree stats (CASSANDRA-2698)
 + * Switch from crc32 to adler32 for compressed sstable checksums (CASSANDRA-5862)
 + * Improve offheap memcpy performance (CASSANDRA-5884)
 + * Use a range aware scanner for cleanup (CASSANDRA-2524)
 + * Cleanup doesn't need to inspect sstables that contain only local data 
 +   (CASSANDRA-5722)
 + * Add ability for CQL3 to list partition keys (CASSANDRA-4536)
 + * Improve native protocol serialization (CASSANDRA-5664)
 + * Upgrade Thrift to 0.9.1 (CASSANDRA-5923)
 + * Require superuser status for adding triggers (CASSANDRA-5963)
 +Merged from 1.2:
+  * Fix possible divide-by-zero in HHOM (CASSANDRA-5990)
   * Allow local batchlog writes for CL.ANY (CASSANDRA-5967)
   * Optimize name query performance in wide rows (CASSANDRA-5966)
   * Upgrade metrics-core to version 2.2.0 (CASSANDRA-5947)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/69c9e031/src/java/org/apache/cassandra/db/HintedHandOffManager.java
----------------------------------------------------------------------


[12/12] git commit: Merge branch 'cassandra-2.0' into trunk

Posted by jb...@apache.org.
Merge branch 'cassandra-2.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/03f3642b
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/03f3642b
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/03f3642b

Branch: refs/heads/trunk
Commit: 03f3642b1699a3c2634cbb518ff4db45bbd51ffe
Parents: 115cbb1 7bde245
Author: Jonathan Ellis <jb...@apache.org>
Authored: Thu Sep 12 13:41:07 2013 +0200
Committer: Jonathan Ellis <jb...@apache.org>
Committed: Thu Sep 12 13:41:07 2013 +0200

----------------------------------------------------------------------
 .../org/apache/cassandra/cql3/UntypedResultSet.java  | 15 ++++++++++++++-
 1 file changed, 14 insertions(+), 1 deletion(-)
----------------------------------------------------------------------



[07/12] git commit: enhance UntypedResultSet patch by Ben Coverston; reviewed by jbellis for CASSANDRA-6000

Posted by jb...@apache.org.
enhance UntypedResultSet
patch by Ben Coverston; reviewed by jbellis for CASSANDRA-6000


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

Branch: refs/heads/cassandra-1.2
Commit: 394b35edf3e6fa4d83386622b438a8ca684385ad
Parents: 8cc28a1
Author: Jonathan Ellis <jb...@apache.org>
Authored: Thu Sep 12 13:40:40 2013 +0200
Committer: Jonathan Ellis <jb...@apache.org>
Committed: Thu Sep 12 13:40:40 2013 +0200

----------------------------------------------------------------------
 .../org/apache/cassandra/cql3/UntypedResultSet.java  | 15 ++++++++++++++-
 1 file changed, 14 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/394b35ed/src/java/org/apache/cassandra/cql3/UntypedResultSet.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/cql3/UntypedResultSet.java b/src/java/org/apache/cassandra/cql3/UntypedResultSet.java
index 9bee563..b77e727 100644
--- a/src/java/org/apache/cassandra/cql3/UntypedResultSet.java
+++ b/src/java/org/apache/cassandra/cql3/UntypedResultSet.java
@@ -77,10 +77,12 @@ public class UntypedResultSet implements Iterable<UntypedResultSet.Row>
 
     public static class Row
     {
-        Map<String, ByteBuffer> data = new HashMap<String, ByteBuffer>();
+        final Map<String, ByteBuffer> data = new HashMap<String, ByteBuffer>();
+        final List<ColumnSpecification> columns;
 
         public Row(List<ColumnSpecification> names, List<ByteBuffer> columns)
         {
+            this.columns = names;
             for (int i = 0; i < names.size(); i++)
                 data.put(names.get(i).toString(), columns.get(i));
         }
@@ -142,12 +144,23 @@ public class UntypedResultSet implements Iterable<UntypedResultSet.Row>
             return raw == null ? null : SetType.getInstance(type).compose(raw);
         }
 
+        public <T> List<T> getList(String column, AbstractType<T> type)
+        {
+            ByteBuffer raw = data.get(column);
+            return raw == null ? null : ListType.getInstance(type).compose(raw);
+        }
+
         public <K, V> Map<K, V> getMap(String column, AbstractType<K> keyType, AbstractType<V> valueType)
         {
             ByteBuffer raw = data.get(column);
             return raw == null ? null : MapType.getInstance(keyType, valueType).compose(raw);
         }
 
+        public List<ColumnSpecification> getColumns()
+        {
+            return columns;
+        }
+
         @Override
         public String toString()
         {


[06/12] git commit: Merge branch 'cassandra-2.0' into trunk

Posted by jb...@apache.org.
Merge branch 'cassandra-2.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/115cbb19
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/115cbb19
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/115cbb19

Branch: refs/heads/trunk
Commit: 115cbb19c05f7c89dee6d2cc25fc90b110db7415
Parents: 4f11934 69c9e03
Author: Jonathan Ellis <jb...@apache.org>
Authored: Thu Sep 12 13:22:06 2013 +0200
Committer: Jonathan Ellis <jb...@apache.org>
Committed: Thu Sep 12 13:22:06 2013 +0200

----------------------------------------------------------------------
 CHANGES.txt                                                | 1 +
 src/java/org/apache/cassandra/db/HintedHandOffManager.java | 5 +++--
 2 files changed, 4 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


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

http://git-wip-us.apache.org/repos/asf/cassandra/blob/115cbb19/src/java/org/apache/cassandra/db/HintedHandOffManager.java
----------------------------------------------------------------------


[09/12] git commit: enhance UntypedResultSet patch by Ben Coverston; reviewed by jbellis for CASSANDRA-6000

Posted by jb...@apache.org.
enhance UntypedResultSet
patch by Ben Coverston; reviewed by jbellis for CASSANDRA-6000


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

Branch: refs/heads/cassandra-2.0
Commit: 394b35edf3e6fa4d83386622b438a8ca684385ad
Parents: 8cc28a1
Author: Jonathan Ellis <jb...@apache.org>
Authored: Thu Sep 12 13:40:40 2013 +0200
Committer: Jonathan Ellis <jb...@apache.org>
Committed: Thu Sep 12 13:40:40 2013 +0200

----------------------------------------------------------------------
 .../org/apache/cassandra/cql3/UntypedResultSet.java  | 15 ++++++++++++++-
 1 file changed, 14 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/394b35ed/src/java/org/apache/cassandra/cql3/UntypedResultSet.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/cql3/UntypedResultSet.java b/src/java/org/apache/cassandra/cql3/UntypedResultSet.java
index 9bee563..b77e727 100644
--- a/src/java/org/apache/cassandra/cql3/UntypedResultSet.java
+++ b/src/java/org/apache/cassandra/cql3/UntypedResultSet.java
@@ -77,10 +77,12 @@ public class UntypedResultSet implements Iterable<UntypedResultSet.Row>
 
     public static class Row
     {
-        Map<String, ByteBuffer> data = new HashMap<String, ByteBuffer>();
+        final Map<String, ByteBuffer> data = new HashMap<String, ByteBuffer>();
+        final List<ColumnSpecification> columns;
 
         public Row(List<ColumnSpecification> names, List<ByteBuffer> columns)
         {
+            this.columns = names;
             for (int i = 0; i < names.size(); i++)
                 data.put(names.get(i).toString(), columns.get(i));
         }
@@ -142,12 +144,23 @@ public class UntypedResultSet implements Iterable<UntypedResultSet.Row>
             return raw == null ? null : SetType.getInstance(type).compose(raw);
         }
 
+        public <T> List<T> getList(String column, AbstractType<T> type)
+        {
+            ByteBuffer raw = data.get(column);
+            return raw == null ? null : ListType.getInstance(type).compose(raw);
+        }
+
         public <K, V> Map<K, V> getMap(String column, AbstractType<K> keyType, AbstractType<V> valueType)
         {
             ByteBuffer raw = data.get(column);
             return raw == null ? null : MapType.getInstance(keyType, valueType).compose(raw);
         }
 
+        public List<ColumnSpecification> getColumns()
+        {
+            return columns;
+        }
+
         @Override
         public String toString()
         {


[05/12] git commit: merge from 1.2

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


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

Branch: refs/heads/trunk
Commit: 69c9e031ee1aa8b96f29ac47ab5e8b79b5c2ac0f
Parents: 7f117da 8cc28a1
Author: Jonathan Ellis <jb...@apache.org>
Authored: Thu Sep 12 13:22:00 2013 +0200
Committer: Jonathan Ellis <jb...@apache.org>
Committed: Thu Sep 12 13:22:00 2013 +0200

----------------------------------------------------------------------
 CHANGES.txt                                                | 1 +
 src/java/org/apache/cassandra/db/HintedHandOffManager.java | 5 +++--
 2 files changed, 4 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/69c9e031/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index 68829d8,6ece609..6807039
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,19 -1,5 +1,20 @@@
 -1.2.10
 +2.0.1
 + * Improve error message when yaml contains invalid properties (CASSANDRA-5958)
 + * Improve leveled compaction's ability to find non-overlapping L0 compactions
 +   to work on concurrently (CASSANDRA-5921)
 + * Notify indexer of columns shadowed by range tombstones (CASSANDRA-5614)
 + * Log Merkle tree stats (CASSANDRA-2698)
 + * Switch from crc32 to adler32 for compressed sstable checksums (CASSANDRA-5862)
 + * Improve offheap memcpy performance (CASSANDRA-5884)
 + * Use a range aware scanner for cleanup (CASSANDRA-2524)
 + * Cleanup doesn't need to inspect sstables that contain only local data 
 +   (CASSANDRA-5722)
 + * Add ability for CQL3 to list partition keys (CASSANDRA-4536)
 + * Improve native protocol serialization (CASSANDRA-5664)
 + * Upgrade Thrift to 0.9.1 (CASSANDRA-5923)
 + * Require superuser status for adding triggers (CASSANDRA-5963)
 +Merged from 1.2:
+  * Fix possible divide-by-zero in HHOM (CASSANDRA-5990)
   * Allow local batchlog writes for CL.ANY (CASSANDRA-5967)
   * Optimize name query performance in wide rows (CASSANDRA-5966)
   * Upgrade metrics-core to version 2.2.0 (CASSANDRA-5947)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/69c9e031/src/java/org/apache/cassandra/db/HintedHandOffManager.java
----------------------------------------------------------------------


[03/12] git commit: Fix possible divide-by-zero in HHOM patch by jbellis for CASSANDRA-5990

Posted by jb...@apache.org.
Fix possible divide-by-zero in HHOM
patch by jbellis for CASSANDRA-5990


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

Branch: refs/heads/trunk
Commit: 8cc28a1477e19545bd0f6dca9180c937f9c85c8d
Parents: f5618e3
Author: Jonathan Ellis <jb...@apache.org>
Authored: Thu Sep 12 13:21:20 2013 +0200
Committer: Jonathan Ellis <jb...@apache.org>
Committed: Thu Sep 12 13:21:37 2013 +0200

----------------------------------------------------------------------
 CHANGES.txt                                                | 1 +
 src/java/org/apache/cassandra/db/HintedHandOffManager.java | 5 +++--
 2 files changed, 4 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/8cc28a14/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index e420a7b..6ece609 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
 1.2.10
+ * Fix possible divide-by-zero in HHOM (CASSANDRA-5990)
  * Allow local batchlog writes for CL.ANY (CASSANDRA-5967)
  * Optimize name query performance in wide rows (CASSANDRA-5966)
  * Upgrade metrics-core to version 2.2.0 (CASSANDRA-5947)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/8cc28a14/src/java/org/apache/cassandra/db/HintedHandOffManager.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/HintedHandOffManager.java b/src/java/org/apache/cassandra/db/HintedHandOffManager.java
index 5ca32c3..c333359 100644
--- a/src/java/org/apache/cassandra/db/HintedHandOffManager.java
+++ b/src/java/org/apache/cassandra/db/HintedHandOffManager.java
@@ -436,9 +436,10 @@ public class HintedHandOffManager implements HintedHandOffManagerMBean
     private int calculatePageSize()
     {
         // read less columns (mutations) per page if they are very large
-        if (hintStore.getMeanColumns() > 0)
+        int meanColumnCount = hintStore.getMeanColumns();
+        if (meanColumnCount > 0)
         {
-            int averageColumnSize = (int) (hintStore.getMeanRowSize() / hintStore.getMeanColumns());
+            int averageColumnSize = (int) (hintStore.getMeanRowSize() / meanColumnCount);
             // page size of 1 does not allow actual paging b/c of >= behavior on startColumn
             return Math.max(2, Math.min(PAGE_SIZE, DatabaseDescriptor.getInMemoryCompactionLimit() / averageColumnSize));
         }


[08/12] git commit: enhance UntypedResultSet patch by Ben Coverston; reviewed by jbellis for CASSANDRA-6000

Posted by jb...@apache.org.
enhance UntypedResultSet
patch by Ben Coverston; reviewed by jbellis for CASSANDRA-6000


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

Branch: refs/heads/trunk
Commit: 394b35edf3e6fa4d83386622b438a8ca684385ad
Parents: 8cc28a1
Author: Jonathan Ellis <jb...@apache.org>
Authored: Thu Sep 12 13:40:40 2013 +0200
Committer: Jonathan Ellis <jb...@apache.org>
Committed: Thu Sep 12 13:40:40 2013 +0200

----------------------------------------------------------------------
 .../org/apache/cassandra/cql3/UntypedResultSet.java  | 15 ++++++++++++++-
 1 file changed, 14 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/394b35ed/src/java/org/apache/cassandra/cql3/UntypedResultSet.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/cql3/UntypedResultSet.java b/src/java/org/apache/cassandra/cql3/UntypedResultSet.java
index 9bee563..b77e727 100644
--- a/src/java/org/apache/cassandra/cql3/UntypedResultSet.java
+++ b/src/java/org/apache/cassandra/cql3/UntypedResultSet.java
@@ -77,10 +77,12 @@ public class UntypedResultSet implements Iterable<UntypedResultSet.Row>
 
     public static class Row
     {
-        Map<String, ByteBuffer> data = new HashMap<String, ByteBuffer>();
+        final Map<String, ByteBuffer> data = new HashMap<String, ByteBuffer>();
+        final List<ColumnSpecification> columns;
 
         public Row(List<ColumnSpecification> names, List<ByteBuffer> columns)
         {
+            this.columns = names;
             for (int i = 0; i < names.size(); i++)
                 data.put(names.get(i).toString(), columns.get(i));
         }
@@ -142,12 +144,23 @@ public class UntypedResultSet implements Iterable<UntypedResultSet.Row>
             return raw == null ? null : SetType.getInstance(type).compose(raw);
         }
 
+        public <T> List<T> getList(String column, AbstractType<T> type)
+        {
+            ByteBuffer raw = data.get(column);
+            return raw == null ? null : ListType.getInstance(type).compose(raw);
+        }
+
         public <K, V> Map<K, V> getMap(String column, AbstractType<K> keyType, AbstractType<V> valueType)
         {
             ByteBuffer raw = data.get(column);
             return raw == null ? null : MapType.getInstance(keyType, valueType).compose(raw);
         }
 
+        public List<ColumnSpecification> getColumns()
+        {
+            return columns;
+        }
+
         @Override
         public String toString()
         {


[02/12] git commit: Fix possible divide-by-zero in HHOM patch by jbellis for CASSANDRA-5990

Posted by jb...@apache.org.
Fix possible divide-by-zero in HHOM
patch by jbellis for CASSANDRA-5990


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

Branch: refs/heads/cassandra-2.0
Commit: 8cc28a1477e19545bd0f6dca9180c937f9c85c8d
Parents: f5618e3
Author: Jonathan Ellis <jb...@apache.org>
Authored: Thu Sep 12 13:21:20 2013 +0200
Committer: Jonathan Ellis <jb...@apache.org>
Committed: Thu Sep 12 13:21:37 2013 +0200

----------------------------------------------------------------------
 CHANGES.txt                                                | 1 +
 src/java/org/apache/cassandra/db/HintedHandOffManager.java | 5 +++--
 2 files changed, 4 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/8cc28a14/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index e420a7b..6ece609 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
 1.2.10
+ * Fix possible divide-by-zero in HHOM (CASSANDRA-5990)
  * Allow local batchlog writes for CL.ANY (CASSANDRA-5967)
  * Optimize name query performance in wide rows (CASSANDRA-5966)
  * Upgrade metrics-core to version 2.2.0 (CASSANDRA-5947)

http://git-wip-us.apache.org/repos/asf/cassandra/blob/8cc28a14/src/java/org/apache/cassandra/db/HintedHandOffManager.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/db/HintedHandOffManager.java b/src/java/org/apache/cassandra/db/HintedHandOffManager.java
index 5ca32c3..c333359 100644
--- a/src/java/org/apache/cassandra/db/HintedHandOffManager.java
+++ b/src/java/org/apache/cassandra/db/HintedHandOffManager.java
@@ -436,9 +436,10 @@ public class HintedHandOffManager implements HintedHandOffManagerMBean
     private int calculatePageSize()
     {
         // read less columns (mutations) per page if they are very large
-        if (hintStore.getMeanColumns() > 0)
+        int meanColumnCount = hintStore.getMeanColumns();
+        if (meanColumnCount > 0)
         {
-            int averageColumnSize = (int) (hintStore.getMeanRowSize() / hintStore.getMeanColumns());
+            int averageColumnSize = (int) (hintStore.getMeanRowSize() / meanColumnCount);
             // page size of 1 does not allow actual paging b/c of >= behavior on startColumn
             return Math.max(2, Math.min(PAGE_SIZE, DatabaseDescriptor.getInMemoryCompactionLimit() / averageColumnSize));
         }


[11/12] git commit: Merge branch 'cassandra-1.2' into cassandra-2.0

Posted by jb...@apache.org.
Merge branch 'cassandra-1.2' into cassandra-2.0


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

Branch: refs/heads/trunk
Commit: 7bde2454daff05a603973767fd92c531e245b404
Parents: 69c9e03 394b35e
Author: Jonathan Ellis <jb...@apache.org>
Authored: Thu Sep 12 13:41:01 2013 +0200
Committer: Jonathan Ellis <jb...@apache.org>
Committed: Thu Sep 12 13:41:01 2013 +0200

----------------------------------------------------------------------
 .../org/apache/cassandra/cql3/UntypedResultSet.java  | 15 ++++++++++++++-
 1 file changed, 14 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/7bde2454/src/java/org/apache/cassandra/cql3/UntypedResultSet.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/cql3/UntypedResultSet.java
index 3ef5c95,b77e727..da76f2b
--- a/src/java/org/apache/cassandra/cql3/UntypedResultSet.java
+++ b/src/java/org/apache/cassandra/cql3/UntypedResultSet.java
@@@ -77,15 -77,12 +77,17 @@@ public class UntypedResultSet implement
  
      public static class Row
      {
-         Map<String, ByteBuffer> data = new HashMap<String, ByteBuffer>();
+         final Map<String, ByteBuffer> data = new HashMap<String, ByteBuffer>();
+         final List<ColumnSpecification> columns;
  
 +        public Row(Map<String, ByteBuffer> data)
 +        {
 +            this.data.putAll(data);
 +        }
 +
          public Row(List<ColumnSpecification> names, List<ByteBuffer> columns)
          {
+             this.columns = names;
              for (int i = 0; i < names.size(); i++)
                  data.put(names.get(i).toString(), columns.get(i));
          }


[10/12] git commit: Merge branch 'cassandra-1.2' into cassandra-2.0

Posted by jb...@apache.org.
Merge branch 'cassandra-1.2' into cassandra-2.0


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

Branch: refs/heads/cassandra-2.0
Commit: 7bde2454daff05a603973767fd92c531e245b404
Parents: 69c9e03 394b35e
Author: Jonathan Ellis <jb...@apache.org>
Authored: Thu Sep 12 13:41:01 2013 +0200
Committer: Jonathan Ellis <jb...@apache.org>
Committed: Thu Sep 12 13:41:01 2013 +0200

----------------------------------------------------------------------
 .../org/apache/cassandra/cql3/UntypedResultSet.java  | 15 ++++++++++++++-
 1 file changed, 14 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/7bde2454/src/java/org/apache/cassandra/cql3/UntypedResultSet.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/cql3/UntypedResultSet.java
index 3ef5c95,b77e727..da76f2b
--- a/src/java/org/apache/cassandra/cql3/UntypedResultSet.java
+++ b/src/java/org/apache/cassandra/cql3/UntypedResultSet.java
@@@ -77,15 -77,12 +77,17 @@@ public class UntypedResultSet implement
  
      public static class Row
      {
-         Map<String, ByteBuffer> data = new HashMap<String, ByteBuffer>();
+         final Map<String, ByteBuffer> data = new HashMap<String, ByteBuffer>();
+         final List<ColumnSpecification> columns;
  
 +        public Row(Map<String, ByteBuffer> data)
 +        {
 +            this.data.putAll(data);
 +        }
 +
          public Row(List<ColumnSpecification> names, List<ByteBuffer> columns)
          {
+             this.columns = names;
              for (int i = 0; i < names.size(); i++)
                  data.put(names.get(i).toString(), columns.get(i));
          }