You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by br...@apache.org on 2014/07/30 23:55:38 UTC

[01/10] git commit: Remove ability to change num_tokens once set.

Repository: cassandra
Updated Branches:
  refs/heads/cassandra-2.0 440d23603 -> b40cb0507
  refs/heads/cassandra-2.1 8d6b73268 -> 4333976c8
  refs/heads/cassandra-2.1.0 948ae016f -> 08fd11dc1
  refs/heads/trunk bdffd3c63 -> c37322097


Remove ability to change num_tokens once set.

Patch by brandonwilliams, reviewed by thobbs for CASSANDRA-7649


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

Branch: refs/heads/cassandra-2.0
Commit: b40cb0507ccf229e0f5017f865771a1540d38199
Parents: 440d236
Author: Brandon Williams <br...@apache.org>
Authored: Wed Jul 30 16:53:31 2014 -0500
Committer: Brandon Williams <br...@apache.org>
Committed: Wed Jul 30 16:53:31 2014 -0500

----------------------------------------------------------------------
 .../cassandra/service/StorageService.java       | 45 +-------------------
 1 file changed, 2 insertions(+), 43 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/b40cb050/src/java/org/apache/cassandra/service/StorageService.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/service/StorageService.java b/src/java/org/apache/cassandra/service/StorageService.java
index 8a1b3dc..97ae908 100644
--- a/src/java/org/apache/cassandra/service/StorageService.java
+++ b/src/java/org/apache/cassandra/service/StorageService.java
@@ -821,49 +821,8 @@ public class StorageService extends NotificationBroadcasterSupport implements IE
             }
             else
             {
-                // if we were already bootstrapped with 1 token but num_tokens is set higher in the config,
-                // then we need to migrate to multi-token
-                if (bootstrapTokens.size() == 1 && DatabaseDescriptor.getNumTokens() > 1)
-                {
-                    // wait for ring info
-                    logger.info("Sleeping for ring delay (" + delay + "ms)");
-                    Uninterruptibles.sleepUninterruptibly(delay, TimeUnit.MILLISECONDS);
-                    logger.info("Calculating new tokens");
-                    // calculate num_tokens tokens evenly spaced in the range (left, right]
-                    Token right = bootstrapTokens.iterator().next();
-                    TokenMetadata clone = tokenMetadata.cloneOnlyTokenMap();
-                    clone.updateNormalToken(right, FBUtilities.getBroadcastAddress());
-                    Token left = clone.getPredecessor(right);
-
-                    // get (num_tokens - 1) tokens spaced evenly, and the last token will be our current token (right)
-                    for (int tok = 1; tok < DatabaseDescriptor.getNumTokens(); ++tok)
-                    {
-                        Token l = left;
-                        Token r = right;
-                        // iteratively calculate the location of the token using midpoint
-                        // num iterations is number of bits in IEE754 mantissa (including implicit leading 1)
-                        // we stop early for terminating fractions
-                        // TODO: alternatively we could add an interpolate() method to IPartitioner
-                        double frac = (double)tok / (double)DatabaseDescriptor.getNumTokens();
-                        Token midpoint = getPartitioner().midpoint(l, r);
-                        for (int i = 0; i < 53; ++i)
-                        {
-                            frac *= 2;
-                            if (frac == 1.0) /* not a bug */
-                                break;
-                            else if (frac > 1.0)
-                            {
-                                l = midpoint;
-                                frac -= 1.0;
-                            }
-                            else
-                                r = midpoint;
-                            midpoint = getPartitioner().midpoint(l, r);
-                        }
-                        bootstrapTokens.add(midpoint);
-                    }
-                    logger.info("Split previous range (" + left + ", " + right + "] into " + bootstrapTokens);
-                }
+                if (bootstrapTokens.size() != DatabaseDescriptor.getNumTokens())
+                    throw new ConfigurationException("Cannot change the number of tokens from " + bootstrapTokens.size() + " to " + DatabaseDescriptor.getNumTokens());
                 else
                     logger.info("Using saved tokens " + bootstrapTokens);
             }


[06/10] git commit: Merge branch 'cassandra-2.0' into cassandra-2.1.0

Posted by br...@apache.org.
Merge branch 'cassandra-2.0' into cassandra-2.1.0

Conflicts:
	src/java/org/apache/cassandra/service/StorageService.java


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

Branch: refs/heads/cassandra-2.1.0
Commit: 08fd11dc1dd37079fcc265c5a5a048910f699f76
Parents: 948ae01 b40cb05
Author: Brandon Williams <br...@apache.org>
Authored: Wed Jul 30 16:54:49 2014 -0500
Committer: Brandon Williams <br...@apache.org>
Committed: Wed Jul 30 16:54:49 2014 -0500

----------------------------------------------------------------------
 .../cassandra/service/StorageService.java       | 45 +-------------------
 1 file changed, 2 insertions(+), 43 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/08fd11dc/src/java/org/apache/cassandra/service/StorageService.java
----------------------------------------------------------------------


[05/10] git commit: Merge branch 'cassandra-2.0' into cassandra-2.1.0

Posted by br...@apache.org.
Merge branch 'cassandra-2.0' into cassandra-2.1.0

Conflicts:
	src/java/org/apache/cassandra/service/StorageService.java


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

Branch: refs/heads/cassandra-2.1
Commit: 08fd11dc1dd37079fcc265c5a5a048910f699f76
Parents: 948ae01 b40cb05
Author: Brandon Williams <br...@apache.org>
Authored: Wed Jul 30 16:54:49 2014 -0500
Committer: Brandon Williams <br...@apache.org>
Committed: Wed Jul 30 16:54:49 2014 -0500

----------------------------------------------------------------------
 .../cassandra/service/StorageService.java       | 45 +-------------------
 1 file changed, 2 insertions(+), 43 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/08fd11dc/src/java/org/apache/cassandra/service/StorageService.java
----------------------------------------------------------------------


[03/10] git commit: Remove ability to change num_tokens once set.

Posted by br...@apache.org.
Remove ability to change num_tokens once set.

Patch by brandonwilliams, reviewed by thobbs for CASSANDRA-7649


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

Branch: refs/heads/cassandra-2.1
Commit: b40cb0507ccf229e0f5017f865771a1540d38199
Parents: 440d236
Author: Brandon Williams <br...@apache.org>
Authored: Wed Jul 30 16:53:31 2014 -0500
Committer: Brandon Williams <br...@apache.org>
Committed: Wed Jul 30 16:53:31 2014 -0500

----------------------------------------------------------------------
 .../cassandra/service/StorageService.java       | 45 +-------------------
 1 file changed, 2 insertions(+), 43 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/b40cb050/src/java/org/apache/cassandra/service/StorageService.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/service/StorageService.java b/src/java/org/apache/cassandra/service/StorageService.java
index 8a1b3dc..97ae908 100644
--- a/src/java/org/apache/cassandra/service/StorageService.java
+++ b/src/java/org/apache/cassandra/service/StorageService.java
@@ -821,49 +821,8 @@ public class StorageService extends NotificationBroadcasterSupport implements IE
             }
             else
             {
-                // if we were already bootstrapped with 1 token but num_tokens is set higher in the config,
-                // then we need to migrate to multi-token
-                if (bootstrapTokens.size() == 1 && DatabaseDescriptor.getNumTokens() > 1)
-                {
-                    // wait for ring info
-                    logger.info("Sleeping for ring delay (" + delay + "ms)");
-                    Uninterruptibles.sleepUninterruptibly(delay, TimeUnit.MILLISECONDS);
-                    logger.info("Calculating new tokens");
-                    // calculate num_tokens tokens evenly spaced in the range (left, right]
-                    Token right = bootstrapTokens.iterator().next();
-                    TokenMetadata clone = tokenMetadata.cloneOnlyTokenMap();
-                    clone.updateNormalToken(right, FBUtilities.getBroadcastAddress());
-                    Token left = clone.getPredecessor(right);
-
-                    // get (num_tokens - 1) tokens spaced evenly, and the last token will be our current token (right)
-                    for (int tok = 1; tok < DatabaseDescriptor.getNumTokens(); ++tok)
-                    {
-                        Token l = left;
-                        Token r = right;
-                        // iteratively calculate the location of the token using midpoint
-                        // num iterations is number of bits in IEE754 mantissa (including implicit leading 1)
-                        // we stop early for terminating fractions
-                        // TODO: alternatively we could add an interpolate() method to IPartitioner
-                        double frac = (double)tok / (double)DatabaseDescriptor.getNumTokens();
-                        Token midpoint = getPartitioner().midpoint(l, r);
-                        for (int i = 0; i < 53; ++i)
-                        {
-                            frac *= 2;
-                            if (frac == 1.0) /* not a bug */
-                                break;
-                            else if (frac > 1.0)
-                            {
-                                l = midpoint;
-                                frac -= 1.0;
-                            }
-                            else
-                                r = midpoint;
-                            midpoint = getPartitioner().midpoint(l, r);
-                        }
-                        bootstrapTokens.add(midpoint);
-                    }
-                    logger.info("Split previous range (" + left + ", " + right + "] into " + bootstrapTokens);
-                }
+                if (bootstrapTokens.size() != DatabaseDescriptor.getNumTokens())
+                    throw new ConfigurationException("Cannot change the number of tokens from " + bootstrapTokens.size() + " to " + DatabaseDescriptor.getNumTokens());
                 else
                     logger.info("Using saved tokens " + bootstrapTokens);
             }


[07/10] git commit: Merge branch 'cassandra-2.0' into cassandra-2.1.0

Posted by br...@apache.org.
Merge branch 'cassandra-2.0' into cassandra-2.1.0

Conflicts:
	src/java/org/apache/cassandra/service/StorageService.java


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

Branch: refs/heads/trunk
Commit: 08fd11dc1dd37079fcc265c5a5a048910f699f76
Parents: 948ae01 b40cb05
Author: Brandon Williams <br...@apache.org>
Authored: Wed Jul 30 16:54:49 2014 -0500
Committer: Brandon Williams <br...@apache.org>
Committed: Wed Jul 30 16:54:49 2014 -0500

----------------------------------------------------------------------
 .../cassandra/service/StorageService.java       | 45 +-------------------
 1 file changed, 2 insertions(+), 43 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/08fd11dc/src/java/org/apache/cassandra/service/StorageService.java
----------------------------------------------------------------------


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

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

Conflicts:
	src/java/org/apache/cassandra/service/StorageService.java


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

Branch: refs/heads/trunk
Commit: c37322097c1a9c2534942ea0ef002e1ee24411b4
Parents: bdffd3c 4333976
Author: Brandon Williams <br...@apache.org>
Authored: Wed Jul 30 16:55:32 2014 -0500
Committer: Brandon Williams <br...@apache.org>
Committed: Wed Jul 30 16:55:32 2014 -0500

----------------------------------------------------------------------
 .../cassandra/service/StorageService.java       | 45 +-------------------
 1 file changed, 2 insertions(+), 43 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/c3732209/src/java/org/apache/cassandra/service/StorageService.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/service/StorageService.java
index 9a30305,18148b7..946204d
--- a/src/java/org/apache/cassandra/service/StorageService.java
+++ b/src/java/org/apache/cassandra/service/StorageService.java
@@@ -833,51 -833,10 +833,10 @@@ public class StorageService extends Not
              }
              else
              {
-                 // if we were already bootstrapped with 1 token but num_tokens is set higher in the config,
-                 // then we need to migrate to multi-token
-                 if (bootstrapTokens.size() == 1 && DatabaseDescriptor.getNumTokens() > 1)
-                 {
-                     // wait for ring info
-                     logger.info("Sleeping for ring delay ({}ms)", delay);
-                     Uninterruptibles.sleepUninterruptibly(delay, TimeUnit.MILLISECONDS);
-                     logger.info("Calculating new tokens");
-                     // calculate num_tokens tokens evenly spaced in the range (left, right]
-                     Token right = bootstrapTokens.iterator().next();
-                     TokenMetadata clone = tokenMetadata.cloneOnlyTokenMap();
-                     clone.updateNormalToken(right, FBUtilities.getBroadcastAddress());
-                     Token left = clone.getPredecessor(right);
- 
-                     // get (num_tokens - 1) tokens spaced evenly, and the last token will be our current token (right)
-                     for (int tok = 1; tok < DatabaseDescriptor.getNumTokens(); ++tok)
-                     {
-                         Token l = left;
-                         Token r = right;
-                         // iteratively calculate the location of the token using midpoint
-                         // num iterations is number of bits in IEE754 mantissa (including implicit leading 1)
-                         // we stop early for terminating fractions
-                         // TODO: alternatively we could add an interpolate() method to IPartitioner
-                         double frac = (double)tok / (double)DatabaseDescriptor.getNumTokens();
-                         Token midpoint = getPartitioner().midpoint(l, r);
-                         for (int i = 0; i < 53; ++i)
-                         {
-                             frac *= 2;
-                             if (frac == 1.0) /* not a bug */
-                                 break;
-                             else if (frac > 1.0)
-                             {
-                                 l = midpoint;
-                                 frac -= 1.0;
-                             }
-                             else
-                                 r = midpoint;
-                             midpoint = getPartitioner().midpoint(l, r);
-                         }
-                         bootstrapTokens.add(midpoint);
-                     }
-                     logger.info("Split previous range ({}, {}] into {}", left, right, bootstrapTokens);
-                 }
+                 if (bootstrapTokens.size() != DatabaseDescriptor.getNumTokens())
+                     throw new ConfigurationException("Cannot change the number of tokens from " + bootstrapTokens.size() + " to " + DatabaseDescriptor.getNumTokens());
                  else
 -                    logger.info("Using saved tokens " + bootstrapTokens);
 +                    logger.info("Using saved tokens {}", bootstrapTokens);
              }
          }
  


[04/10] git commit: Remove ability to change num_tokens once set.

Posted by br...@apache.org.
Remove ability to change num_tokens once set.

Patch by brandonwilliams, reviewed by thobbs for CASSANDRA-7649


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

Branch: refs/heads/trunk
Commit: b40cb0507ccf229e0f5017f865771a1540d38199
Parents: 440d236
Author: Brandon Williams <br...@apache.org>
Authored: Wed Jul 30 16:53:31 2014 -0500
Committer: Brandon Williams <br...@apache.org>
Committed: Wed Jul 30 16:53:31 2014 -0500

----------------------------------------------------------------------
 .../cassandra/service/StorageService.java       | 45 +-------------------
 1 file changed, 2 insertions(+), 43 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/b40cb050/src/java/org/apache/cassandra/service/StorageService.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/service/StorageService.java b/src/java/org/apache/cassandra/service/StorageService.java
index 8a1b3dc..97ae908 100644
--- a/src/java/org/apache/cassandra/service/StorageService.java
+++ b/src/java/org/apache/cassandra/service/StorageService.java
@@ -821,49 +821,8 @@ public class StorageService extends NotificationBroadcasterSupport implements IE
             }
             else
             {
-                // if we were already bootstrapped with 1 token but num_tokens is set higher in the config,
-                // then we need to migrate to multi-token
-                if (bootstrapTokens.size() == 1 && DatabaseDescriptor.getNumTokens() > 1)
-                {
-                    // wait for ring info
-                    logger.info("Sleeping for ring delay (" + delay + "ms)");
-                    Uninterruptibles.sleepUninterruptibly(delay, TimeUnit.MILLISECONDS);
-                    logger.info("Calculating new tokens");
-                    // calculate num_tokens tokens evenly spaced in the range (left, right]
-                    Token right = bootstrapTokens.iterator().next();
-                    TokenMetadata clone = tokenMetadata.cloneOnlyTokenMap();
-                    clone.updateNormalToken(right, FBUtilities.getBroadcastAddress());
-                    Token left = clone.getPredecessor(right);
-
-                    // get (num_tokens - 1) tokens spaced evenly, and the last token will be our current token (right)
-                    for (int tok = 1; tok < DatabaseDescriptor.getNumTokens(); ++tok)
-                    {
-                        Token l = left;
-                        Token r = right;
-                        // iteratively calculate the location of the token using midpoint
-                        // num iterations is number of bits in IEE754 mantissa (including implicit leading 1)
-                        // we stop early for terminating fractions
-                        // TODO: alternatively we could add an interpolate() method to IPartitioner
-                        double frac = (double)tok / (double)DatabaseDescriptor.getNumTokens();
-                        Token midpoint = getPartitioner().midpoint(l, r);
-                        for (int i = 0; i < 53; ++i)
-                        {
-                            frac *= 2;
-                            if (frac == 1.0) /* not a bug */
-                                break;
-                            else if (frac > 1.0)
-                            {
-                                l = midpoint;
-                                frac -= 1.0;
-                            }
-                            else
-                                r = midpoint;
-                            midpoint = getPartitioner().midpoint(l, r);
-                        }
-                        bootstrapTokens.add(midpoint);
-                    }
-                    logger.info("Split previous range (" + left + ", " + right + "] into " + bootstrapTokens);
-                }
+                if (bootstrapTokens.size() != DatabaseDescriptor.getNumTokens())
+                    throw new ConfigurationException("Cannot change the number of tokens from " + bootstrapTokens.size() + " to " + DatabaseDescriptor.getNumTokens());
                 else
                     logger.info("Using saved tokens " + bootstrapTokens);
             }


[08/10] git commit: Merge branch 'cassandra-2.1.0' into cassandra-2.1

Posted by br...@apache.org.
Merge branch 'cassandra-2.1.0' into cassandra-2.1


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

Branch: refs/heads/trunk
Commit: 4333976c8752c0377f743435c19e2e0dd3741f3d
Parents: 8d6b732 08fd11d
Author: Brandon Williams <br...@apache.org>
Authored: Wed Jul 30 16:54:59 2014 -0500
Committer: Brandon Williams <br...@apache.org>
Committed: Wed Jul 30 16:54:59 2014 -0500

----------------------------------------------------------------------
 .../cassandra/service/StorageService.java       | 45 +-------------------
 1 file changed, 2 insertions(+), 43 deletions(-)
----------------------------------------------------------------------



[02/10] git commit: Remove ability to change num_tokens once set.

Posted by br...@apache.org.
Remove ability to change num_tokens once set.

Patch by brandonwilliams, reviewed by thobbs for CASSANDRA-7649


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

Branch: refs/heads/cassandra-2.1.0
Commit: b40cb0507ccf229e0f5017f865771a1540d38199
Parents: 440d236
Author: Brandon Williams <br...@apache.org>
Authored: Wed Jul 30 16:53:31 2014 -0500
Committer: Brandon Williams <br...@apache.org>
Committed: Wed Jul 30 16:53:31 2014 -0500

----------------------------------------------------------------------
 .../cassandra/service/StorageService.java       | 45 +-------------------
 1 file changed, 2 insertions(+), 43 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/b40cb050/src/java/org/apache/cassandra/service/StorageService.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/service/StorageService.java b/src/java/org/apache/cassandra/service/StorageService.java
index 8a1b3dc..97ae908 100644
--- a/src/java/org/apache/cassandra/service/StorageService.java
+++ b/src/java/org/apache/cassandra/service/StorageService.java
@@ -821,49 +821,8 @@ public class StorageService extends NotificationBroadcasterSupport implements IE
             }
             else
             {
-                // if we were already bootstrapped with 1 token but num_tokens is set higher in the config,
-                // then we need to migrate to multi-token
-                if (bootstrapTokens.size() == 1 && DatabaseDescriptor.getNumTokens() > 1)
-                {
-                    // wait for ring info
-                    logger.info("Sleeping for ring delay (" + delay + "ms)");
-                    Uninterruptibles.sleepUninterruptibly(delay, TimeUnit.MILLISECONDS);
-                    logger.info("Calculating new tokens");
-                    // calculate num_tokens tokens evenly spaced in the range (left, right]
-                    Token right = bootstrapTokens.iterator().next();
-                    TokenMetadata clone = tokenMetadata.cloneOnlyTokenMap();
-                    clone.updateNormalToken(right, FBUtilities.getBroadcastAddress());
-                    Token left = clone.getPredecessor(right);
-
-                    // get (num_tokens - 1) tokens spaced evenly, and the last token will be our current token (right)
-                    for (int tok = 1; tok < DatabaseDescriptor.getNumTokens(); ++tok)
-                    {
-                        Token l = left;
-                        Token r = right;
-                        // iteratively calculate the location of the token using midpoint
-                        // num iterations is number of bits in IEE754 mantissa (including implicit leading 1)
-                        // we stop early for terminating fractions
-                        // TODO: alternatively we could add an interpolate() method to IPartitioner
-                        double frac = (double)tok / (double)DatabaseDescriptor.getNumTokens();
-                        Token midpoint = getPartitioner().midpoint(l, r);
-                        for (int i = 0; i < 53; ++i)
-                        {
-                            frac *= 2;
-                            if (frac == 1.0) /* not a bug */
-                                break;
-                            else if (frac > 1.0)
-                            {
-                                l = midpoint;
-                                frac -= 1.0;
-                            }
-                            else
-                                r = midpoint;
-                            midpoint = getPartitioner().midpoint(l, r);
-                        }
-                        bootstrapTokens.add(midpoint);
-                    }
-                    logger.info("Split previous range (" + left + ", " + right + "] into " + bootstrapTokens);
-                }
+                if (bootstrapTokens.size() != DatabaseDescriptor.getNumTokens())
+                    throw new ConfigurationException("Cannot change the number of tokens from " + bootstrapTokens.size() + " to " + DatabaseDescriptor.getNumTokens());
                 else
                     logger.info("Using saved tokens " + bootstrapTokens);
             }


[09/10] git commit: Merge branch 'cassandra-2.1.0' into cassandra-2.1

Posted by br...@apache.org.
Merge branch 'cassandra-2.1.0' into cassandra-2.1


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

Branch: refs/heads/cassandra-2.1
Commit: 4333976c8752c0377f743435c19e2e0dd3741f3d
Parents: 8d6b732 08fd11d
Author: Brandon Williams <br...@apache.org>
Authored: Wed Jul 30 16:54:59 2014 -0500
Committer: Brandon Williams <br...@apache.org>
Committed: Wed Jul 30 16:54:59 2014 -0500

----------------------------------------------------------------------
 .../cassandra/service/StorageService.java       | 45 +-------------------
 1 file changed, 2 insertions(+), 43 deletions(-)
----------------------------------------------------------------------