Merge branch 'cassandra-1.1' into cassandra-1.2

Conflicts:
        CHANGES.txt
        src/java/org/apache/cassandra/io/sstable/SSTableMetadata.java


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

Branch: refs/heads/trunk
Commit: 737ef771032c8487947d41bdd3dcaba8987e682f
Parents: 25f5afa b4d26bb
Author: Sylvain Lebresne <sylv...@datastax.com>
Authored: Mon Mar 25 15:33:08 2013 +0100
Committer: Sylvain Lebresne <sylv...@datastax.com>
Committed: Mon Mar 25 15:33:08 2013 +0100

----------------------------------------------------------------------
 CHANGES.txt                                        |    1 +
 .../apache/cassandra/db/CollationController.java   |    3 +-
 .../cassandra/io/sstable/SSTableMetadata.java      |   22 +++++++-------
 .../apache/cassandra/io/sstable/SSTableReader.java |    4 +--
 4 files changed, 14 insertions(+), 16 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/737ef771/CHANGES.txt
----------------------------------------------------------------------
diff --cc CHANGES.txt
index 7bf455c,0580d15..22cbe3a
--- a/CHANGES.txt
+++ b/CHANGES.txt
@@@ -1,42 -1,4 +1,43 @@@
 -1.1.11
 +1.2.4
 + * Change default stream throughput from 400 to 200 mbps (CASSANDRA-5036)
 + * Gossiper logs DOWN for symmetry with UP (CASSANDRA-5187)
 + * Fix mixing prepared statements between keyspaces (CASSANDRA-5352)
 + * Fix consistency level during bootstrap - strike 3 (CASSANDRA-5354)
 + * Fix transposed arguments in AlreadyExistsException (CASSANDRA-5362)
 + * Improve asynchronous hint delivery (CASSANDRA-5179)
 + * Fix Guava dependency version (12.0 -> 13.0.1) for Maven (CASSANDRA-5364)
 + * Validate that provided CQL3 collection value are < 64K (CASSANDRA-5355)
 + * Change Kernel Page Cache skipping into row preheating (disabled by default)
 +   (CASSANDRA-4937)
 +Merged from 1.1:
 + * cli: Quote ks and cf names in schema output when needed (CASSANDRA-5052)
++ * Fix bad default for min/max timestamp in SSTableMetadata (CASSANDRA-5372)
 +
 +
 +1.2.3
 + * add check for sstable overlap within a level on startup (CASSANDRA-5327)
 + * replace ipv6 colons in jmx object names (CASSANDRA-5298, 5328)
 + * Avoid allocating SSTableBoundedScanner during repair when the range does 
 +   not intersect the sstable (CASSANDRA-5249)
 + * Don't lowercase property map keys (this breaks NTS) (CASSANDRA-5292)
 + * Fix composite comparator with super columns (CASSANDRA-5287)
 + * Fix insufficient validation of UPDATE queries against counter cfs
 +   (CASSANDRA-5300)
 + * Fix PropertyFileSnitch default DC/Rack behavior (CASSANDRA-5285)
 + * Handle null values when executing prepared statement (CASSANDRA-5081)
 + * Add netty to pom dependencies (CASSANDRA-5181)
 + * Include type arguments in Thrift CQLPreparedResult (CASSANDRA-5311)
 + * Fix compaction not removing columns when bf_fp_ratio is 1 (CASSANDRA-5182)
 + * cli: Warn about missing CQL3 tables in schema descriptions (CASSANDRA-5309)
 + * Re-enable unknown option in replication/compaction strategies option for
 +   backward compatibility (CASSANDRA-4795)
 + * Add binary protocol support to stress (CASSANDRA-4993)
 + * cqlsh: Fix COPY FROM value quoting and null handling (CASSANDRA-5305)
 + * Fix repair -pr for vnodes (CASSANDRA-5329)
 + * Relax CL for auth queries for non-default users (CASSANDRA-5310)
 + * Fix AssertionError during repair (CASSANDRA-5245)
 + * Don't announce migrations to pre-1.2 nodes (CASSANDRA-5334)
 +Merged from 1.1:
   * Update offline scrub for 1.0 -> 1.1 directory structure (CASSANDRA-5195)
   * add tmp flag to Descriptor hashcode (CASSANDRA-4021)
   * fix logging of "Found table data in data directories" when only system 
tables

http://git-wip-us.apache.org/repos/asf/cassandra/blob/737ef771/src/java/org/apache/cassandra/db/CollationController.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/db/CollationController.java
index 3350de3,fb9674f..dafcdd3
--- a/src/java/org/apache/cassandra/db/CollationController.java
+++ b/src/java/org/apache/cassandra/db/CollationController.java
@@@ -212,8 -205,8 +212,7 @@@ public class CollationControlle
          AbstractColumnContainer container = filter.path.superColumnName == 
null
                                            ? returnCF
                                            : (SuperColumn) 
returnCF.getColumn(filter.path.superColumnName);
--        // MIN_VALUE means we don't know any information
--        if (container == null || sstableTimestamp == Long.MIN_VALUE)
++        if (container == null)
              return;
  
          for (Iterator<ByteBuffer> iterator = ((NamesQueryFilter) 
filter.filter).columns.iterator(); iterator.hasNext(); )

http://git-wip-us.apache.org/repos/asf/cassandra/blob/737ef771/src/java/org/apache/cassandra/io/sstable/SSTableMetadata.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/io/sstable/SSTableMetadata.java
index bb4ded4,64555a0..865c2ea
--- a/src/java/org/apache/cassandra/io/sstable/SSTableMetadata.java
+++ b/src/java/org/apache/cassandra/io/sstable/SSTableMetadata.java
@@@ -63,16 -62,13 +63,23 @@@ public class SSTableMetadat
          this(defaultRowSizeHistogram(),
               defaultColumnCountHistogram(),
               ReplayPosition.NONE,
-              Long.MAX_VALUE,
 +             Long.MIN_VALUE,
+              Long.MAX_VALUE,
 -             Double.MIN_VALUE,
 +             NO_COMPRESSION_RATIO,
               null,
 -             Collections.<Integer>emptySet());
 +             Collections.<Integer>emptySet(),
 +             defaultTombstoneDropTimeHistogram());
      }
  
-     private SSTableMetadata(EstimatedHistogram rowSizes, EstimatedHistogram 
columnCounts, ReplayPosition replayPosition, long minTimestamp,
-             long maxTimestamp, double cr, String partitioner, Set<Integer> 
ancestors, StreamingHistogram estimatedTombstoneDropTime)
 -    private SSTableMetadata(EstimatedHistogram rowSizes, EstimatedHistogram 
columnCounts, ReplayPosition replayPosition, long maxTimestamp, double cr, 
String partitioner, Set<Integer> ancestors)
++    private SSTableMetadata(EstimatedHistogram rowSizes,
++                            EstimatedHistogram columnCounts,
++                            ReplayPosition replayPosition,
++                            long minTimestamp,
++                            long maxTimestamp,
++                            double cr,
++                            String partitioner,
++                            Set<Integer> ancestors,
++                            StreamingHistogram estimatedTombstoneDropTime)
      {
          this.estimatedRowSize = rowSizes;
          this.estimatedColumnCount = columnCounts;
@@@ -82,14 -77,13 +89,9 @@@
          this.compressionRatio = cr;
          this.partitioner = partitioner;
          this.ancestors = ancestors;
 -    }
 -
 -    public static SSTableMetadata createDefaultInstance()
 -    {
 -        return new SSTableMetadata();
 +        this.estimatedTombstoneDropTime = estimatedTombstoneDropTime;
      }
  
-     public static SSTableMetadata createDefaultInstance()
-     {
-         return new SSTableMetadata();
-     }
- 
      public static Collector createCollector()
      {
          return new Collector();
@@@ -291,17 -223,14 +293,15 @@@
                  // make sure we don't omit replaying something that we 
should.  see CASSANDRA-4782
                  replayPosition = ReplayPosition.NONE;
              }
 -            long maxTimestamp = desc.containsTimestamp() ? dis.readLong() : 
Long.MAX_VALUE;
 -            if (!desc.tracksMaxTimestamp) // see javadoc to 
Descriptor.containsTimestamp
 +            long minTimestamp = desc.version.tracksMinTimestamp ? 
dis.readLong() : Long.MIN_VALUE;
-             if (!desc.version.tracksMinTimestamp)
-                 minTimestamp = Long.MAX_VALUE;
-             long maxTimestamp = desc.version.containsTimestamp() ? 
dis.readLong() : Long.MIN_VALUE;
++            long maxTimestamp = desc.version.containsTimestamp() ? 
dis.readLong() : Long.MAX_VALUE;
 +            if (!desc.version.tracksMaxTimestamp) // see javadoc to 
Descriptor.containsTimestamp
                  maxTimestamp = Long.MAX_VALUE;
 -            double compressionRatio = desc.hasCompressionRatio
 +            double compressionRatio = desc.version.hasCompressionRatio
                                      ? dis.readDouble()
 -                                    : Double.MIN_VALUE;
 -            String partitioner = desc.hasPartitioner ? dis.readUTF() : null;
 -            int nbAncestors = desc.hasAncestors ? dis.readInt() : 0;
 +                                    : NO_COMPRESSION_RATIO;
 +            String partitioner = desc.version.hasPartitioner ? dis.readUTF() 
: null;
 +            int nbAncestors = desc.version.hasAncestors ? dis.readInt() : 0;
              Set<Integer> ancestors = new HashSet<Integer>(nbAncestors);
              for (int i = 0; i < nbAncestors; i++)
                  ancestors.add(dis.readInt());

http://git-wip-us.apache.org/repos/asf/cassandra/blob/737ef771/src/java/org/apache/cassandra/io/sstable/SSTableReader.java
----------------------------------------------------------------------
diff --cc src/java/org/apache/cassandra/io/sstable/SSTableReader.java
index dbc45d8,18d77ee..cec2e42
--- a/src/java/org/apache/cassandra/io/sstable/SSTableReader.java
+++ b/src/java/org/apache/cassandra/io/sstable/SSTableReader.java
@@@ -165,9 -168,9 +165,7 @@@ public class SSTableReader extends SSTa
          long start = System.currentTimeMillis();
          logger.info("Opening {} ({} bytes)", descriptor, new 
File(descriptor.filenameFor(COMPONENT_DATA)).length());
  
--        SSTableMetadata sstableMetadata = components.contains(Component.STATS)
--                                        ? 
SSTableMetadata.serializer.deserialize(descriptor)
--                                        : 
SSTableMetadata.createDefaultInstance();
++        SSTableMetadata sstableMetadata = 
SSTableMetadata.serializer.deserialize(descriptor);
  
          // Check if sstable is created using same partitioner.
          // Partitioner can be null, which indicates older version of sstable 
or no stats available.

Reply via email to