You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by sl...@apache.org on 2016/01/18 15:27:40 UTC
[01/10] cassandra git commit: Make UUID LSB unique per-process
Repository: cassandra
Updated Branches:
refs/heads/cassandra-2.2 79b949236 -> 47e8ef9e9
refs/heads/cassandra-3.0 a3360afa8 -> 2445ea77e
refs/heads/cassandra-3.3 a6170ef80 -> bf917cbd9
refs/heads/trunk 22f02fe60 -> ee5aec2d2
Make UUID LSB unique per-process
patch by slebresne; reviewed by benedict for CASSANDRA-7925
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/47e8ef9e
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/47e8ef9e
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/47e8ef9e
Branch: refs/heads/cassandra-2.2
Commit: 47e8ef9e9ce70c54115681f854f483a53992c988
Parents: 79b9492
Author: Sylvain Lebresne <sy...@datastax.com>
Authored: Fri Jan 15 15:25:03 2016 +0100
Committer: Sylvain Lebresne <sy...@datastax.com>
Committed: Mon Jan 18 15:24:50 2016 +0100
----------------------------------------------------------------------
CHANGES.txt | 1 +
.../org/apache/cassandra/service/StartupChecks.java | 2 +-
src/java/org/apache/cassandra/utils/SigarLibrary.java | 9 ++++++++-
src/java/org/apache/cassandra/utils/UUIDGen.java | 12 ++++++++++++
4 files changed, 22 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/47e8ef9e/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 2bfba80..f571c29 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
2.2.5
+ * Make UUID LSB unique per process (CASSANDRA-7925)
* Avoid NPE when performing sstable tasks (scrub etc.) (CASSANDRA-10980)
* Make sure client gets tombstone overwhelmed warning (CASSANDRA-9465)
* Fix error streaming section more than 2GB (CASSANDRA-10961)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/47e8ef9e/src/java/org/apache/cassandra/service/StartupChecks.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/service/StartupChecks.java b/src/java/org/apache/cassandra/service/StartupChecks.java
index 19f32b6..34bc824 100644
--- a/src/java/org/apache/cassandra/service/StartupChecks.java
+++ b/src/java/org/apache/cassandra/service/StartupChecks.java
@@ -195,7 +195,7 @@ public class StartupChecks
{
public void execute()
{
- new SigarLibrary().warnIfRunningInDegradedMode();
+ SigarLibrary.instance.warnIfRunningInDegradedMode();
}
};
http://git-wip-us.apache.org/repos/asf/cassandra/blob/47e8ef9e/src/java/org/apache/cassandra/utils/SigarLibrary.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/utils/SigarLibrary.java b/src/java/org/apache/cassandra/utils/SigarLibrary.java
index 7cf4d71..0312204 100644
--- a/src/java/org/apache/cassandra/utils/SigarLibrary.java
+++ b/src/java/org/apache/cassandra/utils/SigarLibrary.java
@@ -25,6 +25,8 @@ public class SigarLibrary
{
private Logger logger = LoggerFactory.getLogger(SigarLibrary.class);
+ public static final SigarLibrary instance = new SigarLibrary();
+
private Sigar sigar;
private FileSystemMap mounts = null;
private boolean initialized = false;
@@ -37,7 +39,7 @@ public class SigarLibrary
// TODO: Determine if file system is remote or local
// TODO: Determine if disk latency is within acceptable limits
- public SigarLibrary()
+ private SigarLibrary()
{
logger.info("Initializing SIGAR library");
try
@@ -154,6 +156,11 @@ public class SigarLibrary
}
}
+ public long getPid()
+ {
+ return initialized ? sigar.getPid() : -1;
+ }
+
public void warnIfRunningInDegradedMode()
{
if (initialized)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/47e8ef9e/src/java/org/apache/cassandra/utils/UUIDGen.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/utils/UUIDGen.java b/src/java/org/apache/cassandra/utils/UUIDGen.java
index a777a50..df07e1f 100644
--- a/src/java/org/apache/cassandra/utils/UUIDGen.java
+++ b/src/java/org/apache/cassandra/utils/UUIDGen.java
@@ -26,6 +26,7 @@ import java.util.Random;
import java.util.UUID;
import com.google.common.annotations.VisibleForTesting;
+import com.google.common.base.Charsets;
/**
@@ -309,10 +310,21 @@ public class UUIDGen
{
try
{
+ // Identify the host.
MessageDigest messageDigest = MessageDigest.getInstance("MD5");
for(InetAddress addr : data)
messageDigest.update(addr.getAddress());
+ // Identify the process on the load: we use both the PID and class loader hash.
+ long pid = SigarLibrary.instance.getPid();
+ if (pid < 0)
+ pid = new Random(System.currentTimeMillis()).nextLong();
+ FBUtilities.updateWithLong(messageDigest, pid);
+
+ ClassLoader loader = UUIDGen.class.getClassLoader();
+ int loaderId = loader != null ? System.identityHashCode(loader) : 0;
+ FBUtilities.updateWithInt(messageDigest, loaderId);
+
return messageDigest.digest();
}
catch (NoSuchAlgorithmException nsae)
[02/10] cassandra git commit: Make UUID LSB unique per-process
Posted by sl...@apache.org.
Make UUID LSB unique per-process
patch by slebresne; reviewed by benedict for CASSANDRA-7925
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/47e8ef9e
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/47e8ef9e
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/47e8ef9e
Branch: refs/heads/cassandra-3.0
Commit: 47e8ef9e9ce70c54115681f854f483a53992c988
Parents: 79b9492
Author: Sylvain Lebresne <sy...@datastax.com>
Authored: Fri Jan 15 15:25:03 2016 +0100
Committer: Sylvain Lebresne <sy...@datastax.com>
Committed: Mon Jan 18 15:24:50 2016 +0100
----------------------------------------------------------------------
CHANGES.txt | 1 +
.../org/apache/cassandra/service/StartupChecks.java | 2 +-
src/java/org/apache/cassandra/utils/SigarLibrary.java | 9 ++++++++-
src/java/org/apache/cassandra/utils/UUIDGen.java | 12 ++++++++++++
4 files changed, 22 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/47e8ef9e/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 2bfba80..f571c29 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
2.2.5
+ * Make UUID LSB unique per process (CASSANDRA-7925)
* Avoid NPE when performing sstable tasks (scrub etc.) (CASSANDRA-10980)
* Make sure client gets tombstone overwhelmed warning (CASSANDRA-9465)
* Fix error streaming section more than 2GB (CASSANDRA-10961)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/47e8ef9e/src/java/org/apache/cassandra/service/StartupChecks.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/service/StartupChecks.java b/src/java/org/apache/cassandra/service/StartupChecks.java
index 19f32b6..34bc824 100644
--- a/src/java/org/apache/cassandra/service/StartupChecks.java
+++ b/src/java/org/apache/cassandra/service/StartupChecks.java
@@ -195,7 +195,7 @@ public class StartupChecks
{
public void execute()
{
- new SigarLibrary().warnIfRunningInDegradedMode();
+ SigarLibrary.instance.warnIfRunningInDegradedMode();
}
};
http://git-wip-us.apache.org/repos/asf/cassandra/blob/47e8ef9e/src/java/org/apache/cassandra/utils/SigarLibrary.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/utils/SigarLibrary.java b/src/java/org/apache/cassandra/utils/SigarLibrary.java
index 7cf4d71..0312204 100644
--- a/src/java/org/apache/cassandra/utils/SigarLibrary.java
+++ b/src/java/org/apache/cassandra/utils/SigarLibrary.java
@@ -25,6 +25,8 @@ public class SigarLibrary
{
private Logger logger = LoggerFactory.getLogger(SigarLibrary.class);
+ public static final SigarLibrary instance = new SigarLibrary();
+
private Sigar sigar;
private FileSystemMap mounts = null;
private boolean initialized = false;
@@ -37,7 +39,7 @@ public class SigarLibrary
// TODO: Determine if file system is remote or local
// TODO: Determine if disk latency is within acceptable limits
- public SigarLibrary()
+ private SigarLibrary()
{
logger.info("Initializing SIGAR library");
try
@@ -154,6 +156,11 @@ public class SigarLibrary
}
}
+ public long getPid()
+ {
+ return initialized ? sigar.getPid() : -1;
+ }
+
public void warnIfRunningInDegradedMode()
{
if (initialized)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/47e8ef9e/src/java/org/apache/cassandra/utils/UUIDGen.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/utils/UUIDGen.java b/src/java/org/apache/cassandra/utils/UUIDGen.java
index a777a50..df07e1f 100644
--- a/src/java/org/apache/cassandra/utils/UUIDGen.java
+++ b/src/java/org/apache/cassandra/utils/UUIDGen.java
@@ -26,6 +26,7 @@ import java.util.Random;
import java.util.UUID;
import com.google.common.annotations.VisibleForTesting;
+import com.google.common.base.Charsets;
/**
@@ -309,10 +310,21 @@ public class UUIDGen
{
try
{
+ // Identify the host.
MessageDigest messageDigest = MessageDigest.getInstance("MD5");
for(InetAddress addr : data)
messageDigest.update(addr.getAddress());
+ // Identify the process on the load: we use both the PID and class loader hash.
+ long pid = SigarLibrary.instance.getPid();
+ if (pid < 0)
+ pid = new Random(System.currentTimeMillis()).nextLong();
+ FBUtilities.updateWithLong(messageDigest, pid);
+
+ ClassLoader loader = UUIDGen.class.getClassLoader();
+ int loaderId = loader != null ? System.identityHashCode(loader) : 0;
+ FBUtilities.updateWithInt(messageDigest, loaderId);
+
return messageDigest.digest();
}
catch (NoSuchAlgorithmException nsae)
[09/10] cassandra git commit: Merge branch 'cassandra-3.0' into
cassandra-3.3
Posted by sl...@apache.org.
Merge branch 'cassandra-3.0' into cassandra-3.3
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/bf917cbd
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/bf917cbd
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/bf917cbd
Branch: refs/heads/trunk
Commit: bf917cbd90bcaa5be8b76e857e58561a00a82c8d
Parents: a6170ef 2445ea7
Author: Sylvain Lebresne <sy...@datastax.com>
Authored: Mon Jan 18 15:25:51 2016 +0100
Committer: Sylvain Lebresne <sy...@datastax.com>
Committed: Mon Jan 18 15:25:51 2016 +0100
----------------------------------------------------------------------
CHANGES.txt | 1 +
.../org/apache/cassandra/service/StartupChecks.java | 2 +-
src/java/org/apache/cassandra/utils/SigarLibrary.java | 9 ++++++++-
src/java/org/apache/cassandra/utils/UUIDGen.java | 12 ++++++++++++
4 files changed, 22 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/bf917cbd/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index c7a5c23,41978ba..840c795
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -11,7 -7,18 +11,8 @@@ Merged from 3.0
tombstone (CASSANDRA-10743)
* MV should use the maximum timestamp of the primary key (CASSANDRA-10910)
* Fix potential assertion error during compaction (CASSANDRA-10944)
- * Fix counting of received sstables in streaming (CASSANDRA-10949)
- * Implement hints compression (CASSANDRA-9428)
- * Fix potential assertion error when reading static columns (CASSANDRA-10903)
- * Avoid NoSuchElementException when executing empty batch (CASSANDRA-10711)
- * Avoid building PartitionUpdate in toString (CASSANDRA-10897)
- * Reduce heap spent when receiving many SSTables (CASSANDRA-10797)
- * Add back support for 3rd party auth providers to bulk loader (CASSANDRA-10873)
- * Eliminate the dependency on jgrapht for UDT resolution (CASSANDRA-10653)
- * (Hadoop) Close Clusters and Sessions in Hadoop Input/Output classes (CASSANDRA-10837)
- * Fix sstableloader not working with upper case keyspace name (CASSANDRA-10806)
Merged from 2.2:
+ * Make UUID LSB unique per process (CASSANDRA-7925)
* Avoid NPE when performing sstable tasks (scrub etc.) (CASSANDRA-10980)
* Make sure client gets tombstone overwhelmed warning (CASSANDRA-9465)
* Fix error streaming section more than 2GB (CASSANDRA-10961)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/bf917cbd/src/java/org/apache/cassandra/service/StartupChecks.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/bf917cbd/src/java/org/apache/cassandra/utils/UUIDGen.java
----------------------------------------------------------------------
[04/10] cassandra git commit: Make UUID LSB unique per-process
Posted by sl...@apache.org.
Make UUID LSB unique per-process
patch by slebresne; reviewed by benedict for CASSANDRA-7925
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/47e8ef9e
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/47e8ef9e
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/47e8ef9e
Branch: refs/heads/trunk
Commit: 47e8ef9e9ce70c54115681f854f483a53992c988
Parents: 79b9492
Author: Sylvain Lebresne <sy...@datastax.com>
Authored: Fri Jan 15 15:25:03 2016 +0100
Committer: Sylvain Lebresne <sy...@datastax.com>
Committed: Mon Jan 18 15:24:50 2016 +0100
----------------------------------------------------------------------
CHANGES.txt | 1 +
.../org/apache/cassandra/service/StartupChecks.java | 2 +-
src/java/org/apache/cassandra/utils/SigarLibrary.java | 9 ++++++++-
src/java/org/apache/cassandra/utils/UUIDGen.java | 12 ++++++++++++
4 files changed, 22 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/47e8ef9e/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 2bfba80..f571c29 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
2.2.5
+ * Make UUID LSB unique per process (CASSANDRA-7925)
* Avoid NPE when performing sstable tasks (scrub etc.) (CASSANDRA-10980)
* Make sure client gets tombstone overwhelmed warning (CASSANDRA-9465)
* Fix error streaming section more than 2GB (CASSANDRA-10961)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/47e8ef9e/src/java/org/apache/cassandra/service/StartupChecks.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/service/StartupChecks.java b/src/java/org/apache/cassandra/service/StartupChecks.java
index 19f32b6..34bc824 100644
--- a/src/java/org/apache/cassandra/service/StartupChecks.java
+++ b/src/java/org/apache/cassandra/service/StartupChecks.java
@@ -195,7 +195,7 @@ public class StartupChecks
{
public void execute()
{
- new SigarLibrary().warnIfRunningInDegradedMode();
+ SigarLibrary.instance.warnIfRunningInDegradedMode();
}
};
http://git-wip-us.apache.org/repos/asf/cassandra/blob/47e8ef9e/src/java/org/apache/cassandra/utils/SigarLibrary.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/utils/SigarLibrary.java b/src/java/org/apache/cassandra/utils/SigarLibrary.java
index 7cf4d71..0312204 100644
--- a/src/java/org/apache/cassandra/utils/SigarLibrary.java
+++ b/src/java/org/apache/cassandra/utils/SigarLibrary.java
@@ -25,6 +25,8 @@ public class SigarLibrary
{
private Logger logger = LoggerFactory.getLogger(SigarLibrary.class);
+ public static final SigarLibrary instance = new SigarLibrary();
+
private Sigar sigar;
private FileSystemMap mounts = null;
private boolean initialized = false;
@@ -37,7 +39,7 @@ public class SigarLibrary
// TODO: Determine if file system is remote or local
// TODO: Determine if disk latency is within acceptable limits
- public SigarLibrary()
+ private SigarLibrary()
{
logger.info("Initializing SIGAR library");
try
@@ -154,6 +156,11 @@ public class SigarLibrary
}
}
+ public long getPid()
+ {
+ return initialized ? sigar.getPid() : -1;
+ }
+
public void warnIfRunningInDegradedMode()
{
if (initialized)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/47e8ef9e/src/java/org/apache/cassandra/utils/UUIDGen.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/utils/UUIDGen.java b/src/java/org/apache/cassandra/utils/UUIDGen.java
index a777a50..df07e1f 100644
--- a/src/java/org/apache/cassandra/utils/UUIDGen.java
+++ b/src/java/org/apache/cassandra/utils/UUIDGen.java
@@ -26,6 +26,7 @@ import java.util.Random;
import java.util.UUID;
import com.google.common.annotations.VisibleForTesting;
+import com.google.common.base.Charsets;
/**
@@ -309,10 +310,21 @@ public class UUIDGen
{
try
{
+ // Identify the host.
MessageDigest messageDigest = MessageDigest.getInstance("MD5");
for(InetAddress addr : data)
messageDigest.update(addr.getAddress());
+ // Identify the process on the load: we use both the PID and class loader hash.
+ long pid = SigarLibrary.instance.getPid();
+ if (pid < 0)
+ pid = new Random(System.currentTimeMillis()).nextLong();
+ FBUtilities.updateWithLong(messageDigest, pid);
+
+ ClassLoader loader = UUIDGen.class.getClassLoader();
+ int loaderId = loader != null ? System.identityHashCode(loader) : 0;
+ FBUtilities.updateWithInt(messageDigest, loaderId);
+
return messageDigest.digest();
}
catch (NoSuchAlgorithmException nsae)
[07/10] cassandra git commit: Merge branch 'cassandra-2.2' into
cassandra-3.0
Posted by sl...@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/2445ea77
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/2445ea77
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/2445ea77
Branch: refs/heads/trunk
Commit: 2445ea77ec7951cf738db16be9b04fb793de73be
Parents: a3360af 47e8ef9
Author: Sylvain Lebresne <sy...@datastax.com>
Authored: Mon Jan 18 15:25:38 2016 +0100
Committer: Sylvain Lebresne <sy...@datastax.com>
Committed: Mon Jan 18 15:25:38 2016 +0100
----------------------------------------------------------------------
CHANGES.txt | 1 +
.../org/apache/cassandra/service/StartupChecks.java | 2 +-
src/java/org/apache/cassandra/utils/SigarLibrary.java | 9 ++++++++-
src/java/org/apache/cassandra/utils/UUIDGen.java | 12 ++++++++++++
4 files changed, 22 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/2445ea77/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index 478fe08,f571c29..41978ba
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,23 -1,5 +1,24 @@@
-2.2.5
+3.0.3
+ * Remove checksum files after replaying hints (CASSANDRA-10947)
+ * Support passing base table metadata to custom 2i validation (CASSANDRA-10924)
+ * Ensure stale index entries are purged during reads (CASSANDRA-11013)
+ * Fix AssertionError when removing from list using UPDATE (CASSANDRA-10954)
+ * Fix UnsupportedOperationException when reading old sstable with range
+ tombstone (CASSANDRA-10743)
+ * MV should use the maximum timestamp of the primary key (CASSANDRA-10910)
+ * Fix potential assertion error during compaction (CASSANDRA-10944)
+ * Fix counting of received sstables in streaming (CASSANDRA-10949)
+ * Implement hints compression (CASSANDRA-9428)
+ * Fix potential assertion error when reading static columns (CASSANDRA-10903)
+ * Avoid NoSuchElementException when executing empty batch (CASSANDRA-10711)
+ * Avoid building PartitionUpdate in toString (CASSANDRA-10897)
+ * Reduce heap spent when receiving many SSTables (CASSANDRA-10797)
+ * Add back support for 3rd party auth providers to bulk loader (CASSANDRA-10873)
+ * Eliminate the dependency on jgrapht for UDT resolution (CASSANDRA-10653)
+ * (Hadoop) Close Clusters and Sessions in Hadoop Input/Output classes (CASSANDRA-10837)
+ * Fix sstableloader not working with upper case keyspace name (CASSANDRA-10806)
+Merged from 2.2:
+ * Make UUID LSB unique per process (CASSANDRA-7925)
* Avoid NPE when performing sstable tasks (scrub etc.) (CASSANDRA-10980)
* Make sure client gets tombstone overwhelmed warning (CASSANDRA-9465)
* Fix error streaming section more than 2GB (CASSANDRA-10961)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/2445ea77/src/java/org/apache/cassandra/service/StartupChecks.java
----------------------------------------------------------------------
[06/10] cassandra git commit: Merge branch 'cassandra-2.2' into
cassandra-3.0
Posted by sl...@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/2445ea77
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/2445ea77
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/2445ea77
Branch: refs/heads/cassandra-3.0
Commit: 2445ea77ec7951cf738db16be9b04fb793de73be
Parents: a3360af 47e8ef9
Author: Sylvain Lebresne <sy...@datastax.com>
Authored: Mon Jan 18 15:25:38 2016 +0100
Committer: Sylvain Lebresne <sy...@datastax.com>
Committed: Mon Jan 18 15:25:38 2016 +0100
----------------------------------------------------------------------
CHANGES.txt | 1 +
.../org/apache/cassandra/service/StartupChecks.java | 2 +-
src/java/org/apache/cassandra/utils/SigarLibrary.java | 9 ++++++++-
src/java/org/apache/cassandra/utils/UUIDGen.java | 12 ++++++++++++
4 files changed, 22 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/2445ea77/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index 478fe08,f571c29..41978ba
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,23 -1,5 +1,24 @@@
-2.2.5
+3.0.3
+ * Remove checksum files after replaying hints (CASSANDRA-10947)
+ * Support passing base table metadata to custom 2i validation (CASSANDRA-10924)
+ * Ensure stale index entries are purged during reads (CASSANDRA-11013)
+ * Fix AssertionError when removing from list using UPDATE (CASSANDRA-10954)
+ * Fix UnsupportedOperationException when reading old sstable with range
+ tombstone (CASSANDRA-10743)
+ * MV should use the maximum timestamp of the primary key (CASSANDRA-10910)
+ * Fix potential assertion error during compaction (CASSANDRA-10944)
+ * Fix counting of received sstables in streaming (CASSANDRA-10949)
+ * Implement hints compression (CASSANDRA-9428)
+ * Fix potential assertion error when reading static columns (CASSANDRA-10903)
+ * Avoid NoSuchElementException when executing empty batch (CASSANDRA-10711)
+ * Avoid building PartitionUpdate in toString (CASSANDRA-10897)
+ * Reduce heap spent when receiving many SSTables (CASSANDRA-10797)
+ * Add back support for 3rd party auth providers to bulk loader (CASSANDRA-10873)
+ * Eliminate the dependency on jgrapht for UDT resolution (CASSANDRA-10653)
+ * (Hadoop) Close Clusters and Sessions in Hadoop Input/Output classes (CASSANDRA-10837)
+ * Fix sstableloader not working with upper case keyspace name (CASSANDRA-10806)
+Merged from 2.2:
+ * Make UUID LSB unique per process (CASSANDRA-7925)
* Avoid NPE when performing sstable tasks (scrub etc.) (CASSANDRA-10980)
* Make sure client gets tombstone overwhelmed warning (CASSANDRA-9465)
* Fix error streaming section more than 2GB (CASSANDRA-10961)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/2445ea77/src/java/org/apache/cassandra/service/StartupChecks.java
----------------------------------------------------------------------
[03/10] cassandra git commit: Make UUID LSB unique per-process
Posted by sl...@apache.org.
Make UUID LSB unique per-process
patch by slebresne; reviewed by benedict for CASSANDRA-7925
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/47e8ef9e
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/47e8ef9e
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/47e8ef9e
Branch: refs/heads/cassandra-3.3
Commit: 47e8ef9e9ce70c54115681f854f483a53992c988
Parents: 79b9492
Author: Sylvain Lebresne <sy...@datastax.com>
Authored: Fri Jan 15 15:25:03 2016 +0100
Committer: Sylvain Lebresne <sy...@datastax.com>
Committed: Mon Jan 18 15:24:50 2016 +0100
----------------------------------------------------------------------
CHANGES.txt | 1 +
.../org/apache/cassandra/service/StartupChecks.java | 2 +-
src/java/org/apache/cassandra/utils/SigarLibrary.java | 9 ++++++++-
src/java/org/apache/cassandra/utils/UUIDGen.java | 12 ++++++++++++
4 files changed, 22 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/47e8ef9e/CHANGES.txt
----------------------------------------------------------------------
diff --git a/CHANGES.txt b/CHANGES.txt
index 2bfba80..f571c29 100644
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@ -1,4 +1,5 @@
2.2.5
+ * Make UUID LSB unique per process (CASSANDRA-7925)
* Avoid NPE when performing sstable tasks (scrub etc.) (CASSANDRA-10980)
* Make sure client gets tombstone overwhelmed warning (CASSANDRA-9465)
* Fix error streaming section more than 2GB (CASSANDRA-10961)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/47e8ef9e/src/java/org/apache/cassandra/service/StartupChecks.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/service/StartupChecks.java b/src/java/org/apache/cassandra/service/StartupChecks.java
index 19f32b6..34bc824 100644
--- a/src/java/org/apache/cassandra/service/StartupChecks.java
+++ b/src/java/org/apache/cassandra/service/StartupChecks.java
@@ -195,7 +195,7 @@ public class StartupChecks
{
public void execute()
{
- new SigarLibrary().warnIfRunningInDegradedMode();
+ SigarLibrary.instance.warnIfRunningInDegradedMode();
}
};
http://git-wip-us.apache.org/repos/asf/cassandra/blob/47e8ef9e/src/java/org/apache/cassandra/utils/SigarLibrary.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/utils/SigarLibrary.java b/src/java/org/apache/cassandra/utils/SigarLibrary.java
index 7cf4d71..0312204 100644
--- a/src/java/org/apache/cassandra/utils/SigarLibrary.java
+++ b/src/java/org/apache/cassandra/utils/SigarLibrary.java
@@ -25,6 +25,8 @@ public class SigarLibrary
{
private Logger logger = LoggerFactory.getLogger(SigarLibrary.class);
+ public static final SigarLibrary instance = new SigarLibrary();
+
private Sigar sigar;
private FileSystemMap mounts = null;
private boolean initialized = false;
@@ -37,7 +39,7 @@ public class SigarLibrary
// TODO: Determine if file system is remote or local
// TODO: Determine if disk latency is within acceptable limits
- public SigarLibrary()
+ private SigarLibrary()
{
logger.info("Initializing SIGAR library");
try
@@ -154,6 +156,11 @@ public class SigarLibrary
}
}
+ public long getPid()
+ {
+ return initialized ? sigar.getPid() : -1;
+ }
+
public void warnIfRunningInDegradedMode()
{
if (initialized)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/47e8ef9e/src/java/org/apache/cassandra/utils/UUIDGen.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/utils/UUIDGen.java b/src/java/org/apache/cassandra/utils/UUIDGen.java
index a777a50..df07e1f 100644
--- a/src/java/org/apache/cassandra/utils/UUIDGen.java
+++ b/src/java/org/apache/cassandra/utils/UUIDGen.java
@@ -26,6 +26,7 @@ import java.util.Random;
import java.util.UUID;
import com.google.common.annotations.VisibleForTesting;
+import com.google.common.base.Charsets;
/**
@@ -309,10 +310,21 @@ public class UUIDGen
{
try
{
+ // Identify the host.
MessageDigest messageDigest = MessageDigest.getInstance("MD5");
for(InetAddress addr : data)
messageDigest.update(addr.getAddress());
+ // Identify the process on the load: we use both the PID and class loader hash.
+ long pid = SigarLibrary.instance.getPid();
+ if (pid < 0)
+ pid = new Random(System.currentTimeMillis()).nextLong();
+ FBUtilities.updateWithLong(messageDigest, pid);
+
+ ClassLoader loader = UUIDGen.class.getClassLoader();
+ int loaderId = loader != null ? System.identityHashCode(loader) : 0;
+ FBUtilities.updateWithInt(messageDigest, loaderId);
+
return messageDigest.digest();
}
catch (NoSuchAlgorithmException nsae)
[05/10] cassandra git commit: Merge branch 'cassandra-2.2' into
cassandra-3.0
Posted by sl...@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/2445ea77
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/2445ea77
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/2445ea77
Branch: refs/heads/cassandra-3.3
Commit: 2445ea77ec7951cf738db16be9b04fb793de73be
Parents: a3360af 47e8ef9
Author: Sylvain Lebresne <sy...@datastax.com>
Authored: Mon Jan 18 15:25:38 2016 +0100
Committer: Sylvain Lebresne <sy...@datastax.com>
Committed: Mon Jan 18 15:25:38 2016 +0100
----------------------------------------------------------------------
CHANGES.txt | 1 +
.../org/apache/cassandra/service/StartupChecks.java | 2 +-
src/java/org/apache/cassandra/utils/SigarLibrary.java | 9 ++++++++-
src/java/org/apache/cassandra/utils/UUIDGen.java | 12 ++++++++++++
4 files changed, 22 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/2445ea77/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index 478fe08,f571c29..41978ba
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,23 -1,5 +1,24 @@@
-2.2.5
+3.0.3
+ * Remove checksum files after replaying hints (CASSANDRA-10947)
+ * Support passing base table metadata to custom 2i validation (CASSANDRA-10924)
+ * Ensure stale index entries are purged during reads (CASSANDRA-11013)
+ * Fix AssertionError when removing from list using UPDATE (CASSANDRA-10954)
+ * Fix UnsupportedOperationException when reading old sstable with range
+ tombstone (CASSANDRA-10743)
+ * MV should use the maximum timestamp of the primary key (CASSANDRA-10910)
+ * Fix potential assertion error during compaction (CASSANDRA-10944)
+ * Fix counting of received sstables in streaming (CASSANDRA-10949)
+ * Implement hints compression (CASSANDRA-9428)
+ * Fix potential assertion error when reading static columns (CASSANDRA-10903)
+ * Avoid NoSuchElementException when executing empty batch (CASSANDRA-10711)
+ * Avoid building PartitionUpdate in toString (CASSANDRA-10897)
+ * Reduce heap spent when receiving many SSTables (CASSANDRA-10797)
+ * Add back support for 3rd party auth providers to bulk loader (CASSANDRA-10873)
+ * Eliminate the dependency on jgrapht for UDT resolution (CASSANDRA-10653)
+ * (Hadoop) Close Clusters and Sessions in Hadoop Input/Output classes (CASSANDRA-10837)
+ * Fix sstableloader not working with upper case keyspace name (CASSANDRA-10806)
+Merged from 2.2:
+ * Make UUID LSB unique per process (CASSANDRA-7925)
* Avoid NPE when performing sstable tasks (scrub etc.) (CASSANDRA-10980)
* Make sure client gets tombstone overwhelmed warning (CASSANDRA-9465)
* Fix error streaming section more than 2GB (CASSANDRA-10961)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/2445ea77/src/java/org/apache/cassandra/service/StartupChecks.java
----------------------------------------------------------------------
[08/10] cassandra git commit: Merge branch 'cassandra-3.0' into
cassandra-3.3
Posted by sl...@apache.org.
Merge branch 'cassandra-3.0' into cassandra-3.3
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/bf917cbd
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/bf917cbd
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/bf917cbd
Branch: refs/heads/cassandra-3.3
Commit: bf917cbd90bcaa5be8b76e857e58561a00a82c8d
Parents: a6170ef 2445ea7
Author: Sylvain Lebresne <sy...@datastax.com>
Authored: Mon Jan 18 15:25:51 2016 +0100
Committer: Sylvain Lebresne <sy...@datastax.com>
Committed: Mon Jan 18 15:25:51 2016 +0100
----------------------------------------------------------------------
CHANGES.txt | 1 +
.../org/apache/cassandra/service/StartupChecks.java | 2 +-
src/java/org/apache/cassandra/utils/SigarLibrary.java | 9 ++++++++-
src/java/org/apache/cassandra/utils/UUIDGen.java | 12 ++++++++++++
4 files changed, 22 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/bf917cbd/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index c7a5c23,41978ba..840c795
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -11,7 -7,18 +11,8 @@@ Merged from 3.0
tombstone (CASSANDRA-10743)
* MV should use the maximum timestamp of the primary key (CASSANDRA-10910)
* Fix potential assertion error during compaction (CASSANDRA-10944)
- * Fix counting of received sstables in streaming (CASSANDRA-10949)
- * Implement hints compression (CASSANDRA-9428)
- * Fix potential assertion error when reading static columns (CASSANDRA-10903)
- * Avoid NoSuchElementException when executing empty batch (CASSANDRA-10711)
- * Avoid building PartitionUpdate in toString (CASSANDRA-10897)
- * Reduce heap spent when receiving many SSTables (CASSANDRA-10797)
- * Add back support for 3rd party auth providers to bulk loader (CASSANDRA-10873)
- * Eliminate the dependency on jgrapht for UDT resolution (CASSANDRA-10653)
- * (Hadoop) Close Clusters and Sessions in Hadoop Input/Output classes (CASSANDRA-10837)
- * Fix sstableloader not working with upper case keyspace name (CASSANDRA-10806)
Merged from 2.2:
+ * Make UUID LSB unique per process (CASSANDRA-7925)
* Avoid NPE when performing sstable tasks (scrub etc.) (CASSANDRA-10980)
* Make sure client gets tombstone overwhelmed warning (CASSANDRA-9465)
* Fix error streaming section more than 2GB (CASSANDRA-10961)
http://git-wip-us.apache.org/repos/asf/cassandra/blob/bf917cbd/src/java/org/apache/cassandra/service/StartupChecks.java
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/bf917cbd/src/java/org/apache/cassandra/utils/UUIDGen.java
----------------------------------------------------------------------
[10/10] cassandra git commit: Merge branch 'cassandra-3.3' into trunk
Posted by sl...@apache.org.
Merge branch 'cassandra-3.3' into trunk
Project: http://git-wip-us.apache.org/repos/asf/cassandra/repo
Commit: http://git-wip-us.apache.org/repos/asf/cassandra/commit/ee5aec2d
Tree: http://git-wip-us.apache.org/repos/asf/cassandra/tree/ee5aec2d
Diff: http://git-wip-us.apache.org/repos/asf/cassandra/diff/ee5aec2d
Branch: refs/heads/trunk
Commit: ee5aec2d2ed7795d64a052e191af4aec5c807dba
Parents: 22f02fe bf917cb
Author: Sylvain Lebresne <sy...@datastax.com>
Authored: Mon Jan 18 15:26:06 2016 +0100
Committer: Sylvain Lebresne <sy...@datastax.com>
Committed: Mon Jan 18 15:26:06 2016 +0100
----------------------------------------------------------------------
CHANGES.txt | 1 +
.../org/apache/cassandra/service/StartupChecks.java | 2 +-
src/java/org/apache/cassandra/utils/SigarLibrary.java | 9 ++++++++-
src/java/org/apache/cassandra/utils/UUIDGen.java | 12 ++++++++++++
4 files changed, 22 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cassandra/blob/ee5aec2d/CHANGES.txt
----------------------------------------------------------------------