RequestException when used for reads.  (Previous
      versions would silently perform a ONE read for range queries;
      single-row and multiget reads already rejected ANY.)
    - The largest mutation batch accepted by the commitlog is now 128MB.  
      (In practice, batches larger than ~10MB always caused poor
      performance due to load volatility and GC promotion failures.)
      Larger batches will continue to be accepted but will not be
      durable.  Consider setting durable_writes=false if you really
      want to use such large batches.
    - Make sure that global settings: key_cache_{size_in_mb, save_period}
      and row_cache_{size_in_mb, save_period} in conf/cassandra.yaml are
      used instead of per-ColumnFamily options.
    - JMX methods no longer return custom Cassandra objects.  Any such methods
      will now return standard Maps, Lists, etc.
    - Hadoop input and output details are now separated.  If you were
      previously using methods such as getRpcPort you now need to use
      getInputRpcPort or getOutputRpcPort depending on the circumstance.
    - CQL changes:
      + Prior to 1.1, you could use KEY as the primary key name in some
        select statements, even if the PK was actually given a different
        name.  In 1.1+ you must use the defined PK name.
    - The sliced_buffer_size_in_kb option has been removed from the
      cassandra.yaml config file (this option was a no-op since 1.0).

Features
--------
    - Concurrent schema updates are now supported, with any conflicts
      automatically resolved. Please note that simultaneously running
      ‘CREATE COLUMN FAMILY’ operation on the different nodes wouldn’t
      be safe until version 1.2 due to the nature of ColumnFamily
      identifier generation, for more details see CASSANDRA-3794.
    - The CQL language has undergone a major revision, CQL3, the
      highlights of which are covered at [1].  CQL3 is not
      backwards-compatibile with CQL2, so we've introduced a
      set_cql_version Thrift method to specify which version you want.
      (The default remains CQL2 at least until Cassandra 1.2.)  cqlsh
      adds a --cql3 flag to enable this.
      [1] http://www.datastax.com/dev/blog/schema-in-cassandra-1-1
    - Row-level isolation: multi-column updates to a single row have
      always been *atomic* (either all will be applied, or none)
      thanks to the CommitLog, but until 1.1 they were not *isolated*
      -- a reader may see mixed old and new values while the update
      happens.
    - Finer-grained control over data directories, allowing a ColumnFamily to
      be pinned to specfic volume, e.g. one backed by SSD.
    - The bulk loader is not longer a fat client; it can be run from an
      existing machine in a cluster.
    - A new write survey mode has been added, similar to bootstrap (enabled via
      -Dcassandra.write_survey=true), but the node will not automatically join
      the cluster.  This is useful for cases such as testing different
      compaction strategies with live traffic without affecting the cluster.
    - Key and row caches are now global, similar to the global memtable
      threshold. Manual tuning of cache sizes per-columnfamily is no longer
      required.
    - Off-heap caches no longer require JNA, and will work out of the box
      on Windows as well as Unix platforms.
    - Streaming is now multithreaded.
    - Compactions may now be aborted via JMX or nodetool.
    - The stress tool is not new in 1.1, but it is newly included in
      binary builds as well as the source tree
    - Hadoop: a new BulkOutputFormat is included which will directly write
      SSTables locally and then stream them into the cluster.
      YOU SHOULD USE BulkOutputFormat BY DEFAULT.  ColumnFamilyOutputFormat
      is still around in case for some strange reason you want results
      trickling out over Thrift, but BulkOutputFormat is significantly
      more efficient.
    - Hadoop: KeyRange.filter is now supported with ColumnFamilyInputFormat,
      allowing index expressions to be evaluated server-side to reduce
      the amount of data sent to Hadoop.
    - Hadoop: ColumnFamilyRecordReader has a wide-row mode, enabled via
      a boolean parameter to setInputColumnFamily, that pages through
      data column-at-a-time instead of row-at-a-time.
    - Pig: can use the wide-row Hadoop support, by setting PIG_WIDEROW_INPUT
      to true.  This will produce each row's columns in a bag.



1.0.8
=====

Upgrading
---------
    - Nothing specific to 1.0.8

Other
-----
    - Allow configuring socket timeout for streaming


1.0.7
=====

Upgrading
---------
    - Nothing specific to 1.0.7, please report to instruction for 1.0.6

Other
-----
    - Adds new setstreamthroughput to nodetool to configure streaming
      throttling
    - Adds JMX property to get/set rpc_timeout_in_ms at runtime
    - Allow configuring (per-CF) bloom_filter_fp_chance


1.0.6
=====

Upgrading
---------
    - This release fixes an issue related to the chunk_length_kb option for
      compressed sstables. If you use compression on some column families, it
      is recommended after the upgrade to check the value for this option on
      these column families (the default value is 64). In case the option would
      not be set correctly, you should update the column family definition,
      setting the right value and then run scrub on the column family.
    - Please report to instruction for 1.0.5 if coming from an older version.


1.0.5
=====

Upgrading
---------
    - 1.0.5 comes to fix two important regression of 1.0.4. So all information
      concerning 1.0.4 are valid for this release, but please avoids upgrading
      to 1.0.4.


1.0.4
=====

Upgrading
---------
    - Nothing specific to 1.0.4 but please see the 1.0 upgrading section if
      upgrading from a version prior to 1.0.0

Features
--------
    - A new upgradesstables command has been added to nodetool. It is very
      similar to scrub but without the ability to discard corrupted rows (and
      as a consequence it does not snapshot automatically before). This new
      command is to be prefered to scrub in all cases where sstables should be
      rewritten to the current format for upgrade purposes.

JMX
---
    - The path for the data, commit log and saved cache directories exposed
      through JMX
    - The in-memory bloom filter sizes are now exposed through JMX


1.0.3
=====

Upgrading
---------
    - Nothing specific to 1.0.3 but please see the 1.0 upgrading section if
      upgrading from a version prior to 1.0.0

Features
--------
    - For non compressed sstables (compressed sstable already include more
      fine grained checsums), a sha1 for the full sstable is now automatically
      created (in a fix with suffix -Digest.sha1). It can be used to check the
      sstable integrity with sha1sum.


1.0.2
=====

Upgrading
---------
    - Nothing specific to 1.0.2 but please see the 1.0 upgrading section if
      upgrading from a version prior to 1.0.0

Features
--------
    - Cassandra CLI queries now have timing information


1.0.1
=====

Upgrading
---------
    - If upgrading from a version prior to 1.0.0, please see the 1.0 Upgrading
      section
    - For running on Windows as a Service, procrun is no longer discributed
      with Cassandra, see README.txt for more information on how to download
      it if necessary.
    - The name given to snapshots directories have been improved for human
      readability. If you had scripts relying on it, you may need to update
      them.


1.0
===

Upgrading
---------
    - Upgrading from version 0.7.1+ or 0.8.2+ can be done with a rolling
      restart, one node at a time.  (0.