Author: xedin Date: Mon Nov 21 18:59:41 2011 New Revision: 1204649 URL: http://svn.apache.org/viewvc?rev=1204649&view=rev Log: merge from 1.0
Modified: cassandra/trunk/ (props changed) cassandra/trunk/CHANGES.txt cassandra/trunk/bin/cassandra.bat cassandra/trunk/contrib/ (props changed) cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java (props changed) cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java (props changed) cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java (props changed) cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java (props changed) cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java (props changed) cassandra/trunk/src/java/org/apache/cassandra/cli/CliClient.java cassandra/trunk/src/java/org/apache/cassandra/cli/CliMain.java cassandra/trunk/src/java/org/apache/cassandra/cli/CliOptions.java cassandra/trunk/src/java/org/apache/cassandra/dht/RandomPartitioner.java cassandra/trunk/src/java/org/apache/cassandra/io/sstable/SSTableMetadata.java cassandra/trunk/src/java/org/apache/cassandra/io/sstable/SSTableReader.java cassandra/trunk/src/java/org/apache/cassandra/service/StorageService.java cassandra/trunk/test/unit/org/apache/cassandra/io/sstable/SSTableMetadataSerializerTest.java cassandra/trunk/test/unit/org/apache/cassandra/utils/MerkleTreeTest.java Propchange: cassandra/trunk/ ------------------------------------------------------------------------------ --- svn:mergeinfo (original) +++ svn:mergeinfo Mon Nov 21 18:59:41 2011 @@ -4,7 +4,7 @@ /cassandra/branches/cassandra-0.8:1090934-1125013,1125019-1198724,1198726-1199259,1199284,1200226,1200471 /cassandra/branches/cassandra-0.8.0:1125021-1130369 /cassandra/branches/cassandra-0.8.1:1101014-1125018 -/cassandra/branches/cassandra-1.0:1167085-1202912,1203117 +/cassandra/branches/cassandra-1.0:1167085-1204646 /cassandra/branches/cassandra-1.0.0:1167104-1167229,1167232-1181093,1181741,1181816,1181820,1182951,1183243 /cassandra/tags/cassandra-0.7.0-rc3:1051699-1053689 /cassandra/tags/cassandra-0.8.0-rc1:1102511-1125020 Modified: cassandra/trunk/CHANGES.txt URL: http://svn.apache.org/viewvc/cassandra/trunk/CHANGES.txt?rev=1204649&r1=1204648&r2=1204649&view=diff ============================================================================== --- cassandra/trunk/CHANGES.txt (original) +++ cassandra/trunk/CHANGES.txt Mon Nov 21 18:59:41 2011 @@ -10,11 +10,13 @@ 1.0.4 + * enforce RP tokens 0..2**127 (CASSANDRA-3501) + * canonicalize paths exposed through JMX (CASSANDRA-3504) * fix "liveSize" stat when sstables are removed (CASSANDRA-3496) * add bloom filter FP rates to nodetool cfstats (CASSANDRA-3347) * record partitioner in sstable metadata component (CASSANDRA-3407) * add new upgradesstables nodetool command (CASSANDRA-3406) - + * skip --debug requirement to see common exceptions in CLI (CASSANDRA-3508) 1.0.3 * revert name-based query defragmentation aka CASSANDRA-2503 (CASSANDRA-3491) @@ -31,7 +33,8 @@ * (CQL) fix for counter decrement syntax (CASSANDRA-3418) * Fix race introduced by CASSANDRA-2503 (CASSANDRA-3482) * Fix incomplete deletion of delivered hints (CASSANDRA-3466) - * Avoid reschuling compactions when no compaction was executed (CASSANDRA-3484) + * Avoid rescheduling compactions when no compaction was executed + (CASSANDRA-3484) * fix handling of the chunk_length_kb compression options (CASSANDRA-3492) Merged from 0.8: * Make counter shard merging thread safe (CASSANDRA-3178) Modified: cassandra/trunk/bin/cassandra.bat URL: http://svn.apache.org/viewvc/cassandra/trunk/bin/cassandra.bat?rev=1204649&r1=1204648&r2=1204649&view=diff ============================================================================== --- cassandra/trunk/bin/cassandra.bat (original) +++ cassandra/trunk/bin/cassandra.bat Mon Nov 21 18:59:41 2011 @@ -15,6 +15,7 @@ @REM limitations under the License. @echo off +if "%OS%" == "Windows_NT" setlocal set ARG=%1 set INSTALL="INSTALL" Propchange: cassandra/trunk/contrib/ ------------------------------------------------------------------------------ --- svn:mergeinfo (original) +++ svn:mergeinfo Mon Nov 21 18:59:41 2011 @@ -4,7 +4,7 @@ /cassandra/branches/cassandra-0.8/contrib:1090934-1125013,1125019-1198724,1198726-1199259,1199284,1200226,1200471 /cassandra/branches/cassandra-0.8.0/contrib:1125021-1130369 /cassandra/branches/cassandra-0.8.1/contrib:1101014-1125018 -/cassandra/branches/cassandra-1.0/contrib:1167085-1202912,1203117 +/cassandra/branches/cassandra-1.0/contrib:1167085-1204646 /cassandra/branches/cassandra-1.0.0/contrib:1167104-1167229,1167232-1181093,1181741,1181816,1181820,1182951,1183243 /cassandra/tags/cassandra-0.7.0-rc3/contrib:1051699-1053689 /cassandra/tags/cassandra-0.8.0-rc1/contrib:1102511-1125020 Propchange: cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java ------------------------------------------------------------------------------ --- svn:mergeinfo (original) +++ svn:mergeinfo Mon Nov 21 18:59:41 2011 @@ -4,7 +4,7 @@ /cassandra/branches/cassandra-0.8/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java:1090934-1125013,1125019-1198724,1198726-1199259,1199284,1200226,1200471 /cassandra/branches/cassandra-0.8.0/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java:1125021-1130369 /cassandra/branches/cassandra-0.8.1/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java:1101014-1125018 -/cassandra/branches/cassandra-1.0/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java:1167085-1202912,1203117 +/cassandra/branches/cassandra-1.0/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java:1167085-1204646 /cassandra/branches/cassandra-1.0.0/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java:1167104-1167229,1167232-1181093,1181741,1181816,1181820,1182951,1183243 /cassandra/tags/cassandra-0.7.0-rc3/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java:1051699-1053689 /cassandra/tags/cassandra-0.8.0-rc1/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java:1102511-1125020 Propchange: cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java ------------------------------------------------------------------------------ --- svn:mergeinfo (original) +++ svn:mergeinfo Mon Nov 21 18:59:41 2011 @@ -4,7 +4,7 @@ /cassandra/branches/cassandra-0.8/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java:1090934-1125013,1125019-1198724,1198726-1199259,1199284,1200226,1200471 /cassandra/branches/cassandra-0.8.0/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java:1125021-1130369 /cassandra/branches/cassandra-0.8.1/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java:1101014-1125018 -/cassandra/branches/cassandra-1.0/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java:1167085-1202912,1203117 +/cassandra/branches/cassandra-1.0/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java:1167085-1204646 /cassandra/branches/cassandra-1.0.0/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java:1167104-1167229,1167232-1181093,1181741,1181816,1181820,1182951,1183243 /cassandra/tags/cassandra-0.7.0-rc3/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java:1051699-1053689 /cassandra/tags/cassandra-0.8.0-rc1/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java:1102511-1125020 Propchange: cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java ------------------------------------------------------------------------------ --- svn:mergeinfo (original) +++ svn:mergeinfo Mon Nov 21 18:59:41 2011 @@ -4,7 +4,7 @@ /cassandra/branches/cassandra-0.8/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java:1090934-1125013,1125019-1198724,1198726-1199259,1199284,1200226,1200471 /cassandra/branches/cassandra-0.8.0/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java:1125021-1130369 /cassandra/branches/cassandra-0.8.1/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java:1101014-1125018 -/cassandra/branches/cassandra-1.0/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java:1167085-1202912,1203117 +/cassandra/branches/cassandra-1.0/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java:1167085-1204646 /cassandra/branches/cassandra-1.0.0/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java:1167104-1167229,1167232-1181093,1181741,1181816,1181820,1182951,1183243 /cassandra/tags/cassandra-0.7.0-rc3/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java:1051699-1053689 /cassandra/tags/cassandra-0.8.0-rc1/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java:1102511-1125020 Propchange: cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java ------------------------------------------------------------------------------ --- svn:mergeinfo (original) +++ svn:mergeinfo Mon Nov 21 18:59:41 2011 @@ -4,7 +4,7 @@ /cassandra/branches/cassandra-0.8/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java:1090934-1125013,1125019-1198724,1198726-1199259,1199284,1200226,1200471 /cassandra/branches/cassandra-0.8.0/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java:1125021-1130369 /cassandra/branches/cassandra-0.8.1/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java:1101014-1125018 -/cassandra/branches/cassandra-1.0/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java:1167085-1202912,1203117 +/cassandra/branches/cassandra-1.0/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java:1167085-1204646 /cassandra/branches/cassandra-1.0.0/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java:1167104-1167229,1167232-1181093,1181741,1181816,1181820,1182951,1183243 /cassandra/tags/cassandra-0.7.0-rc3/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java:1051699-1053689 /cassandra/tags/cassandra-0.8.0-rc1/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java:1102511-1125020 Propchange: cassandra/trunk/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java ------------------------------------------------------------------------------ --- svn:mergeinfo (original) +++ svn:mergeinfo Mon Nov 21 18:59:41 2011 @@ -4,7 +4,7 @@ /cassandra/branches/cassandra-0.8/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java:1090934-1125013,1125019-1198724,1198726-1199259,1199284,1200226,1200471 /cassandra/branches/cassandra-0.8.0/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java:1125021-1130369 /cassandra/branches/cassandra-0.8.1/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java:1101014-1125018 -/cassandra/branches/cassandra-1.0/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java:1167085-1202912,1203117 +/cassandra/branches/cassandra-1.0/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java:1167085-1204646 /cassandra/branches/cassandra-1.0.0/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java:1167104-1167229,1167232-1181093,1181741,1181816,1181820,1182951,1183243 /cassandra/tags/cassandra-0.7.0-rc3/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java:1051699-1053689 /cassandra/tags/cassandra-0.8.0-rc1/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java:1102511-1125020 Modified: cassandra/trunk/src/java/org/apache/cassandra/cli/CliClient.java URL: http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/cli/CliClient.java?rev=1204649&r1=1204648&r2=1204649&view=diff ============================================================================== --- cassandra/trunk/src/java/org/apache/cassandra/cli/CliClient.java (original) +++ cassandra/trunk/src/java/org/apache/cassandra/cli/CliClient.java Mon Nov 21 18:59:41 2011 @@ -1482,7 +1482,7 @@ public class CliClient sessionState.err.println(e.getWhy()); if (sessionState.debug) - e.printStackTrace(); + e.printStackTrace(sessionState.err); } } @@ -1956,8 +1956,8 @@ public class CliClient catch (TException e) { if (sessionState.debug) - e.printStackTrace(); - + e.printStackTrace(sessionState.err); + sessionState.err.println("Login failure. Did you specify 'keyspace', 'username' and 'password'?"); } } Modified: cassandra/trunk/src/java/org/apache/cassandra/cli/CliMain.java URL: http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/cli/CliMain.java?rev=1204649&r1=1204648&r2=1204649&view=diff ============================================================================== --- cassandra/trunk/src/java/org/apache/cassandra/cli/CliMain.java (original) +++ cassandra/trunk/src/java/org/apache/cassandra/cli/CliMain.java Mon Nov 21 18:59:41 2011 @@ -81,8 +81,7 @@ public class CliMain } catch (Exception e) { - if (sessionState.debug) - e.printStackTrace(); + e.printStackTrace(sessionState.err); String error = (e.getCause() == null) ? e.getMessage() : e.getCause().getMessage(); throw new RuntimeException("Exception connecting to " + server + "/" + port + ". Reason: " + error + "."); @@ -161,8 +160,7 @@ public class CliMain { sessionState.err.println("Exception retrieving information about the cassandra node, check you have connected to the thrift port."); - if (sessionState.debug) - e.printStackTrace(); + e.printStackTrace(sessionState.err); return; } @@ -228,10 +226,8 @@ public class CliMain String message = (e.getCause() == null) ? e.getMessage() : e.getCause().getMessage(); sessionState.err.println(errorTemplate + message); - if (sessionState.debug) - { + if (!(e instanceof RuntimeException)) e.printStackTrace(sessionState.err); - } if (sessionState.batch || sessionState.inFileMode()) { Modified: cassandra/trunk/src/java/org/apache/cassandra/cli/CliOptions.java URL: http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/cli/CliOptions.java?rev=1204649&r1=1204648&r2=1204649&view=diff ============================================================================== --- cassandra/trunk/src/java/org/apache/cassandra/cli/CliOptions.java (original) +++ cassandra/trunk/src/java/org/apache/cassandra/cli/CliOptions.java Mon Nov 21 18:59:41 2011 @@ -67,7 +67,7 @@ public class CliOptions // options without argument options.addOption("B", BATCH_OPTION, "enabled batch mode (suppress output; errors are fatal)"); options.addOption(null, UNFRAME_OPTION, "use cassandra server's unframed transport"); - options.addOption(null, DEBUG_OPTION, "display stack traces"); + options.addOption(null, DEBUG_OPTION, "display stack-traces (NOTE: We print strack-traces in the places where it makes sense even without --debug)"); options.addOption("?", HELP_OPTION, "usage help"); options.addOption("v", VERBOSE_OPTION, "verbose output when using batch mode"); } Modified: cassandra/trunk/src/java/org/apache/cassandra/dht/RandomPartitioner.java URL: http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/dht/RandomPartitioner.java?rev=1204649&r1=1204648&r2=1204649&view=diff ============================================================================== --- cassandra/trunk/src/java/org/apache/cassandra/dht/RandomPartitioner.java (original) +++ cassandra/trunk/src/java/org/apache/cassandra/dht/RandomPartitioner.java Mon Nov 21 18:59:41 2011 @@ -38,6 +38,7 @@ public class RandomPartitioner implement { public static final BigInteger ZERO = new BigInteger("0"); public static final BigIntegerToken MINIMUM = new BigIntegerToken("-1"); + public static final BigInteger MAXIMUM = new BigInteger("2").pow(127); private static final byte DELIMITER_BYTE = ":".getBytes()[0]; @@ -118,7 +119,11 @@ public class RandomPartitioner implement { try { - new BigInteger(token); + BigInteger i = new BigInteger(token); + if (i.compareTo(ZERO) < 0) + throw new ConfigurationException("Token must be >= 0"); + if (i.compareTo(MAXIMUM) > 0) + throw new ConfigurationException("Token must be <= 2**127"); } catch (NumberFormatException e) { @@ -163,7 +168,7 @@ public class RandomPartitioner implement // n-case else { // NOTE: All divisions must take place in BigDecimals, and all modulo operators must take place in BigIntegers. - final BigInteger ri = new BigInteger("2").pow(127); // (used for addition later) + final BigInteger ri = MAXIMUM; // (used for addition later) final BigDecimal r = new BigDecimal(ri); // The entire range, 2**127 Token start = (Token)i.next(); BigInteger ti = ((BigIntegerToken)start).token; // The first token and its value Token t; BigInteger tim1 = ti; // The last token and its value (after loop) Modified: cassandra/trunk/src/java/org/apache/cassandra/io/sstable/SSTableMetadata.java URL: http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/io/sstable/SSTableMetadata.java?rev=1204649&r1=1204648&r2=1204649&view=diff ============================================================================== --- cassandra/trunk/src/java/org/apache/cassandra/io/sstable/SSTableMetadata.java (original) +++ cassandra/trunk/src/java/org/apache/cassandra/io/sstable/SSTableMetadata.java Mon Nov 21 18:59:41 2011 @@ -50,14 +50,16 @@ import org.apache.cassandra.utils.Estima public class SSTableMetadata { private static Logger logger = LoggerFactory.getLogger(SSTableMetadata.class); - protected final EstimatedHistogram estimatedRowSize; - protected final EstimatedHistogram estimatedColumnCount; - protected final ReplayPosition replayPosition; - protected final long maxTimestamp; - protected final double compressionRatio; - protected final String partitioner; + public static final SSTableMetadataSerializer serializer = new SSTableMetadataSerializer(); + public final EstimatedHistogram estimatedRowSize; + public final EstimatedHistogram estimatedColumnCount; + public final ReplayPosition replayPosition; + public final long maxTimestamp; + public final double compressionRatio; + public final String partitioner; + private SSTableMetadata() { this(defaultRowSizeHistogram(), @@ -88,36 +90,6 @@ public class SSTableMetadata return new Collector(); } - public EstimatedHistogram getEstimatedRowSize() - { - return estimatedRowSize; - } - - public EstimatedHistogram getEstimatedColumnCount() - { - return estimatedColumnCount; - } - - public ReplayPosition getReplayPosition() - { - return replayPosition; - } - - public long getMaxTimestamp() - { - return maxTimestamp; - } - - public double getCompressionRatio() - { - return compressionRatio; - } - - public String getPartitioner() - { - return partitioner; - } - static EstimatedHistogram defaultColumnCountHistogram() { // EH of 114 can track a max value of 2395318855, i.e., > 2B columns @@ -132,20 +104,11 @@ public class SSTableMetadata public static class Collector { - protected EstimatedHistogram estimatedRowSize; - protected EstimatedHistogram estimatedColumnCount; - protected ReplayPosition replayPosition; - protected long maxTimestamp; - protected double compressionRatio; - - private Collector() - { - this.estimatedRowSize = defaultRowSizeHistogram(); - this.estimatedColumnCount = defaultColumnCountHistogram(); - this.replayPosition = ReplayPosition.NONE; - this.maxTimestamp = Long.MIN_VALUE; - this.compressionRatio = Double.MIN_VALUE; - } + protected EstimatedHistogram estimatedRowSize = defaultRowSizeHistogram(); + protected EstimatedHistogram estimatedColumnCount = defaultColumnCountHistogram(); + protected ReplayPosition replayPosition = ReplayPosition.NONE; + protected long maxTimestamp = Long.MIN_VALUE; + protected double compressionRatio = Double.MIN_VALUE; public void addRowSize(long rowSize) { @@ -206,12 +169,12 @@ public class SSTableMetadata public void serialize(SSTableMetadata sstableStats, DataOutput dos) throws IOException { - EstimatedHistogram.serializer.serialize(sstableStats.getEstimatedRowSize(), dos); - EstimatedHistogram.serializer.serialize(sstableStats.getEstimatedColumnCount(), dos); - ReplayPosition.serializer.serialize(sstableStats.getReplayPosition(), dos); - dos.writeLong(sstableStats.getMaxTimestamp()); - dos.writeDouble(sstableStats.getCompressionRatio()); - dos.writeUTF(sstableStats.getPartitioner()); + EstimatedHistogram.serializer.serialize(sstableStats.estimatedRowSize, dos); + EstimatedHistogram.serializer.serialize(sstableStats.estimatedColumnCount, dos); + ReplayPosition.serializer.serialize(sstableStats.replayPosition, dos); + dos.writeLong(sstableStats.maxTimestamp); + dos.writeDouble(sstableStats.compressionRatio); + dos.writeUTF(sstableStats.partitioner); } public SSTableMetadata deserialize(Descriptor descriptor) throws IOException Modified: cassandra/trunk/src/java/org/apache/cassandra/io/sstable/SSTableReader.java URL: http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/io/sstable/SSTableReader.java?rev=1204649&r1=1204648&r2=1204649&view=diff ============================================================================== --- cassandra/trunk/src/java/org/apache/cassandra/io/sstable/SSTableReader.java (original) +++ cassandra/trunk/src/java/org/apache/cassandra/io/sstable/SSTableReader.java Mon Nov 21 18:59:41 2011 @@ -139,7 +139,7 @@ public class SSTableReader extends SSTab // check if sstable is created using same partitioner as this node String partitionerName = partitioner.getClass().getCanonicalName(); - if (!partitionerName.equals(sstableMetadata.getPartitioner())) + if (!partitionerName.equals(sstableMetadata.partitioner)) throw new RuntimeException(String.format("Cannot open %s because partitioner does not match %s", descriptor, partitionerName)); @@ -897,27 +897,27 @@ public class SSTableReader extends SSTab public EstimatedHistogram getEstimatedRowSize() { - return sstableMetadata.getEstimatedRowSize(); + return sstableMetadata.estimatedRowSize; } public EstimatedHistogram getEstimatedColumnCount() { - return sstableMetadata.getEstimatedColumnCount(); + return sstableMetadata.estimatedColumnCount; } public double getCompressionRatio() { - return sstableMetadata.getCompressionRatio(); + return sstableMetadata.compressionRatio; } public ReplayPosition getReplayPosition() { - return sstableMetadata.getReplayPosition(); + return sstableMetadata.replayPosition; } public long getMaxTimestamp() { - return sstableMetadata.getMaxTimestamp(); + return sstableMetadata.maxTimestamp; } public RandomAccessReader openDataReader(boolean skipIOCache) throws IOException Modified: cassandra/trunk/src/java/org/apache/cassandra/service/StorageService.java URL: http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/service/StorageService.java?rev=1204649&r1=1204648&r2=1204649&view=diff ============================================================================== --- cassandra/trunk/src/java/org/apache/cassandra/service/StorageService.java (original) +++ cassandra/trunk/src/java/org/apache/cassandra/service/StorageService.java Mon Nov 21 18:59:41 2011 @@ -1463,24 +1463,42 @@ public class StorageService implements I return stringify(Gossiper.instance.getUnreachableMembers()); } + private static String getCanonicalPath(String filename) + { + try + { + return new File(filename).getCanonicalPath(); + } + catch (IOException e) + { + throw new IOError(e); + } + } + public String[] getAllDataFileLocations() { - return DatabaseDescriptor.getAllDataFileLocations(); + String[] locations = DatabaseDescriptor.getAllDataFileLocations(); + for (int i = 0; i < locations.length; i++) + locations[i] = getCanonicalPath(locations[i]); + return locations; } public String[] getAllDataFileLocationsForTable(String table) { - return DatabaseDescriptor.getAllDataFileLocationsForTable(table); + String[] locations = DatabaseDescriptor.getAllDataFileLocationsForTable(table); + for (int i = 0; i < locations.length; i++) + locations[i] = getCanonicalPath(locations[i]); + return locations; } public String getCommitLogLocation() { - return DatabaseDescriptor.getCommitLogLocation(); + return getCanonicalPath(DatabaseDescriptor.getCommitLogLocation()); } public String getSavedCachesLocation() { - return DatabaseDescriptor.getSavedCachesLocation(); + return getCanonicalPath(DatabaseDescriptor.getSavedCachesLocation()); } private List<String> stringify(Iterable<InetAddress> endpoints) Modified: cassandra/trunk/test/unit/org/apache/cassandra/io/sstable/SSTableMetadataSerializerTest.java URL: http://svn.apache.org/viewvc/cassandra/trunk/test/unit/org/apache/cassandra/io/sstable/SSTableMetadataSerializerTest.java?rev=1204649&r1=1204648&r2=1204649&view=diff ============================================================================== --- cassandra/trunk/test/unit/org/apache/cassandra/io/sstable/SSTableMetadataSerializerTest.java (original) +++ cassandra/trunk/test/unit/org/apache/cassandra/io/sstable/SSTableMetadataSerializerTest.java Mon Nov 21 18:59:41 2011 @@ -28,7 +28,6 @@ import java.io.IOException; import org.junit.Test; import org.apache.cassandra.db.commitlog.ReplayPosition; -import org.apache.cassandra.utils.ByteBufferUtil; import org.apache.cassandra.utils.EstimatedHistogram; public class SSTableMetadataSerializerTest @@ -62,13 +61,13 @@ public class SSTableMetadataSerializerTe Descriptor desc = new Descriptor(Descriptor.CURRENT_VERSION, new File("."), "", "", 0, false); SSTableMetadata stats = SSTableMetadata.serializer.deserialize(dis, desc); - assert stats.getEstimatedRowSize().equals(originalMetadata.getEstimatedRowSize()); - assert stats.getEstimatedRowSize().equals(rowSizes); - assert stats.getEstimatedColumnCount().equals(originalMetadata.getEstimatedColumnCount()); - assert stats.getEstimatedColumnCount().equals(columnCounts); - assert stats.getReplayPosition().equals(originalMetadata.getReplayPosition()); - assert stats.getReplayPosition().equals(rp); - assert stats.getMaxTimestamp() == maxTimestamp; - assert stats.getMaxTimestamp() == originalMetadata.getMaxTimestamp(); + assert stats.estimatedRowSize.equals(originalMetadata.estimatedRowSize); + assert stats.estimatedRowSize.equals(rowSizes); + assert stats.estimatedColumnCount.equals(originalMetadata.estimatedColumnCount); + assert stats.estimatedColumnCount.equals(columnCounts); + assert stats.replayPosition.equals(originalMetadata.replayPosition); + assert stats.replayPosition.equals(rp); + assert stats.maxTimestamp == maxTimestamp; + assert stats.maxTimestamp == originalMetadata.maxTimestamp; } } Modified: cassandra/trunk/test/unit/org/apache/cassandra/utils/MerkleTreeTest.java URL: http://svn.apache.org/viewvc/cassandra/trunk/test/unit/org/apache/cassandra/utils/MerkleTreeTest.java?rev=1204649&r1=1204648&r2=1204649&view=diff ============================================================================== --- cassandra/trunk/test/unit/org/apache/cassandra/utils/MerkleTreeTest.java (original) +++ cassandra/trunk/test/unit/org/apache/cassandra/utils/MerkleTreeTest.java Mon Nov 21 18:59:41 2011 @@ -102,8 +102,7 @@ public class MerkleTreeTest { if (i == -1) return new BigIntegerToken(new BigInteger("-1")); - BigInteger md5_max = new BigInteger("2").pow(127); - BigInteger bint = md5_max.divide(TOKEN_SCALE).multiply(new BigInteger(""+i)); + BigInteger bint = RandomPartitioner.MAXIMUM.divide(TOKEN_SCALE).multiply(new BigInteger(""+i)); return new BigIntegerToken(bint); }