You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by jb...@apache.org on 2011/11/15 22:32:07 UTC

svn commit: r1202430 - in /cassandra/trunk: ./ bin/ contrib/ interface/thrift/gen-java/org/apache/cassandra/thrift/ pylib/cqlshlib/ src/java/org/apache/cassandra/cli/ src/java/org/apache/cassandra/db/ src/resources/org/apache/cassandra/cli/

Author: jbellis
Date: Tue Nov 15 21:32:06 2011
New Revision: 1202430

URL: http://svn.apache.org/viewvc?rev=1202430&view=rev
Log:
merge from 1.0

Modified:
    cassandra/trunk/   (props changed)
    cassandra/trunk/CHANGES.txt
    cassandra/trunk/bin/cqlsh
    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/pylib/cqlshlib/cqlhandling.py
    cassandra/trunk/pylib/cqlshlib/pylexotron.py
    cassandra/trunk/src/java/org/apache/cassandra/cli/CliClient.java
    cassandra/trunk/src/java/org/apache/cassandra/db/CollationController.java
    cassandra/trunk/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
    cassandra/trunk/src/java/org/apache/cassandra/db/HintedHandOffManager.java
    cassandra/trunk/src/resources/org/apache/cassandra/cli/CliHelp.yaml

Propchange: cassandra/trunk/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Nov 15 21:32:06 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-1200945,1200991,1200998,1201018,1201039,1202080
+/cassandra/branches/cassandra-1.0:1167085-1202429
 /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=1202430&r1=1202429&r2=1202430&view=diff
==============================================================================
--- cassandra/trunk/CHANGES.txt (original)
+++ cassandra/trunk/CHANGES.txt Tue Nov 15 21:32:06 2011
@@ -9,8 +9,9 @@
 
 
 1.0.3
+ * revert name-based query defragmentation aka CASSANDRA-2503 (CASSANDRA-3491)
  * fix invalidate-related test failures (CASSANDRA-3437)
- * add next-gen cqlsh to bin/
+ * add next-gen cqlsh to bin/ (CASSANDRA-3188, 3131, 3493)
  * (CQL) fix handling of rows with no columns (CASSANDRA-3424, 3473)
  * fix querying supercolumns by name returning only a subset of
    subcolumns or old subcolumn versions (CASSANDRA-3446)
@@ -21,7 +22,8 @@
  * fix incorrect size exception during streaming of counters (CASSANDRA-3481)
  * (CQL) fix for counter decrement syntax (CASSANDRA-3418)
  * Fix race introduced by CASSANDRA-2503 (CASSANDRA-3482)
- * Avoid reschuling compactions when no compaction was executed (CASSANDRA-3483)
+ * Fix incomplete deletion of delivered hints (CASSANDRA-3466)
+ * Avoid reschuling 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/cqlsh
URL: http://svn.apache.org/viewvc/cassandra/trunk/bin/cqlsh?rev=1202430&r1=1202429&r2=1202430&view=diff
==============================================================================
--- cassandra/trunk/bin/cqlsh (original)
+++ cassandra/trunk/bin/cqlsh Tue Nov 15 21:32:06 2011
@@ -49,10 +49,10 @@ except ImportError:
 
 try:
     import cql
-except ImportError:
+except ImportError, e:
     sys.stderr.write("\nPython CQL driver not installed, or not on PYTHONPATH.\n")
     sys.stderr.write('You might try "easy_install cql".\n\n')
-    sys.exit(1)
+    sys.exit(str(e))
 
 import cql.decoders
 from cql.cursor import _COUNT_DESCRIPTION, _VOID_DESCRIPTION
@@ -211,19 +211,17 @@ class Shell(cmd.Cmd):
 
         self.current_keyspace = None
 
-        if sys.stdin.isatty():
-            self.prompt = Shell.default_prompt
-        else:
-            self.prompt = ""
-
         self.statement = StringIO()
         self.color = color
         self.in_comment = False
         self.schema_overrides = {}
 
-        if os.isatty(0):
+        if sys.stdin.isatty():
+            self.prompt = Shell.default_prompt
             self.report_connection()
             self.printout('Use HELP for help.')
+        else:
+            self.prompt = ""
 
     def report_connection(self):
         self.show_host()
@@ -1421,6 +1419,23 @@ def option_with_default(cparser_getter, 
     except ConfigParser.Error:
         return default
 
+def should_use_color():
+    if not sys.stdin.isatty():
+        return False
+    if os.environ.get('TERM', 'dumb') == 'dumb':
+        return False
+    try:
+        import subprocess
+        p = subprocess.Popen(['tput', 'colors'], stdout=subprocess.PIPE)
+        stdout, _ = p.communicate()
+        if int(stdout.strip()) < 8:
+            return False
+    except (OSError, ImportError):
+        # oh well, we tried. at least we know there's a $TERM and it's
+        # not "dumb".
+        pass
+    return True
+
 def read_options(cmdlineargs, environment):
     configs = ConfigParser.SafeConfigParser()
     configs.read(CONFIG_FILE)
@@ -1432,7 +1447,7 @@ def read_options(cmdlineargs, environmen
     optvalues.color = option_with_default(configs.getboolean, 'ui', 'color')
     if optvalues.color is None:
         # default yes if tty
-        optvalues.color = bool(os.isatty(0))
+        optvalues.color = should_use_color()
     optvalues.debug = False
 
     (options, arguments) = parser.parse_args(cmdlineargs, values=optvalues)

Propchange: cassandra/trunk/contrib/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Nov 15 21:32:06 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-1200945,1200991,1200998,1201018,1201039,1202080
+/cassandra/branches/cassandra-1.0/contrib:1167085-1202429
 /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 Tue Nov 15 21:32:06 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-1200945,1200991,1200998,1201018,1201039,1202080
+/cassandra/branches/cassandra-1.0/interface/thrift/gen-java/org/apache/cassandra/thrift/Cassandra.java:1167085-1202429
 /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 Tue Nov 15 21:32:06 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-1200945,1200991,1200998,1201018,1201039,1202080
+/cassandra/branches/cassandra-1.0/interface/thrift/gen-java/org/apache/cassandra/thrift/Column.java:1167085-1202429
 /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 Tue Nov 15 21:32:06 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-1200945,1200991,1200998,1201018,1201039,1202080
+/cassandra/branches/cassandra-1.0/interface/thrift/gen-java/org/apache/cassandra/thrift/InvalidRequestException.java:1167085-1202429
 /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 Tue Nov 15 21:32:06 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-1200945,1200991,1200998,1201018,1201039,1202080
+/cassandra/branches/cassandra-1.0/interface/thrift/gen-java/org/apache/cassandra/thrift/NotFoundException.java:1167085-1202429
 /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 Tue Nov 15 21:32:06 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-1200945,1200991,1200998,1201018,1201039,1202080
+/cassandra/branches/cassandra-1.0/interface/thrift/gen-java/org/apache/cassandra/thrift/SuperColumn.java:1167085-1202429
 /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/pylib/cqlshlib/cqlhandling.py
URL: http://svn.apache.org/viewvc/cassandra/trunk/pylib/cqlshlib/cqlhandling.py?rev=1202430&r1=1202429&r2=1202430&view=diff
==============================================================================
--- cassandra/trunk/pylib/cqlshlib/cqlhandling.py (original)
+++ cassandra/trunk/pylib/cqlshlib/cqlhandling.py Tue Nov 15 21:32:06 2011
@@ -189,7 +189,7 @@ JUNK ::= /([ \t\r\f\v]+|(--|[/][/])[^\n\
 <star> ::=          "*" ;
 <range> ::=         ".." ;
 <endtoken> ::=      ";" ;
-<op> ::=            /[=,().]/ ;
+<op> ::=            /[-+=,().]/ ;
 <cmp> ::=           /[<>]=?/ ;
 
 <unclosedString>  ::= /'([^']|'')*/ ;
@@ -267,7 +267,7 @@ syntax_rules += r'''
 <selectWhereClause> ::= <relation> ("AND" <relation>)*
                       | keyname=<colname> "IN" "(" <term> ("," <term>)* ")"
                       ;
-<relation> ::= [rel_lhs]=<colname> ("=" | "<" | ">" | "<=" | ">=") <term>
+<relation> ::= [rel_lhs]=<colname> ("=" | "<" | ">" | "<=" | ">=") <colname>
              ;
 <whatToSelect> ::= colname=<colname> ("," colname=<colname>)*
                  | ("FIRST" <integer>)? "REVERSED"? (rangestart=<colname> ".." rangeend=<colname>
@@ -358,8 +358,8 @@ syntax_rules += r'''
                         "SET" <assignment> ( "," <assignment> )*
                         "WHERE" <updateWhereClause>
                     ;
-<assignment> ::= updatecol=<colname> "=" update_rhs=<term>
-                                         ( counterop=( "+" | "-" ) <term> )?
+<assignment> ::= updatecol=<colname> "=" update_rhs=<colname>
+                                         ( counterop=( "+" | "-"? ) <integer> )?
                ;
 <updateWhereClause> ::= updatefiltercol=<colname> "=" <term>
                       | updatefilterkey=<colname> filter_in="IN" "(" <term> ( "," <term> )* ")"

Modified: cassandra/trunk/pylib/cqlshlib/pylexotron.py
URL: http://svn.apache.org/viewvc/cassandra/trunk/pylib/cqlshlib/pylexotron.py?rev=1202430&r1=1202429&r2=1202430&view=diff
==============================================================================
--- cassandra/trunk/pylib/cqlshlib/pylexotron.py (original)
+++ cassandra/trunk/pylib/cqlshlib/pylexotron.py Tue Nov 15 21:32:06 2011
@@ -88,6 +88,10 @@ class ParseContext:
         return self.__class__(self.ruleset, self.bindings, self.matched,
                               self.remainder, newname)
 
+    def __repr__(self):
+        return '<%s matched=%r remainder=%r prodname=%r>' % (self.__class__.__name__, self.matched, self.remainder,
+                                                             self.productionname)
+
 class matcher:
     def __init__(self, arg):
         self.arg = arg

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=1202430&r1=1202429&r2=1202430&view=diff
==============================================================================
--- cassandra/trunk/src/java/org/apache/cassandra/cli/CliClient.java (original)
+++ cassandra/trunk/src/java/org/apache/cassandra/cli/CliClient.java Tue Nov 15 21:32:06 2011
@@ -188,8 +188,8 @@ public class CliClient
 
     public void printBanner()
     {
+        sessionState.out.println("Welcome to Cassandra CLI version " + FBUtilities.getReleaseVersionString() + "\n");
         sessionState.out.println(getHelp().banner);
-        sessionState.out.println("Cassandra CLI version " + FBUtilities.getReleaseVersionString());
     }
 
     // Execute a CLI Statement 

Modified: cassandra/trunk/src/java/org/apache/cassandra/db/CollationController.java
URL: http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/db/CollationController.java?rev=1202430&r1=1202429&r2=1202430&view=diff
==============================================================================
--- cassandra/trunk/src/java/org/apache/cassandra/db/CollationController.java (original)
+++ cassandra/trunk/src/java/org/apache/cassandra/db/CollationController.java Tue Nov 15 21:32:06 2011
@@ -150,22 +150,7 @@ public class CollationController
             };
             ColumnFamily returnCF = container.cloneMeShallow();
             filter.collateColumns(returnCF, Collections.singletonList(toCollate), cfs.metadata.comparator, gcBefore);
-
-            // "hoist up" the requested data into a more recent sstable
-            if (sstablesIterated >= cfs.getMinimumCompactionThreshold() && cfs.getCompactionStrategy() instanceof SizeTieredCompactionStrategy)
-            {
-                RowMutation rm = new RowMutation(cfs.table.name, new Row(filter.key, returnCF.cloneMe()));
-                try
-                {
-                    rm.applyUnsafe(); // skipping commitlog is fine since we're just de-fragmenting existing data
-                }
-                catch (IOException e)
-                {
-                    // log and allow the result to be returned
-                    logger.error("Error re-writing read results", e);
-                }
-            }
-
+            
             // Caller is responsible for final removeDeletedCF.  This is important for cacheRow to work correctly:
             return returnCF;
         }

Modified: cassandra/trunk/src/java/org/apache/cassandra/db/ColumnFamilyStore.java
URL: http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/db/ColumnFamilyStore.java?rev=1202430&r1=1202429&r2=1202430&view=diff
==============================================================================
--- cassandra/trunk/src/java/org/apache/cassandra/db/ColumnFamilyStore.java (original)
+++ cassandra/trunk/src/java/org/apache/cassandra/db/ColumnFamilyStore.java Tue Nov 15 21:32:06 2011
@@ -1772,7 +1772,6 @@ public class ColumnFamilyStore implement
         return data.getEstimatedColumnCountHistogram();
     }
 
-    @Override
     public double getCompressionRatio()
     {
         return data.getCompressionRatio();
@@ -1895,4 +1894,10 @@ public class ColumnFamilyStore implement
             oldest = Math.min(oldest, memtable.creationTime());
         return oldest;
     }
+
+    public boolean isEmpty()
+    {
+        DataTracker.View view = data.getView();
+        return view.sstables.isEmpty() && view.memtable.getOperations() == 0 && view.memtablesPendingFlush.isEmpty();
+    }
 }

Modified: cassandra/trunk/src/java/org/apache/cassandra/db/HintedHandOffManager.java
URL: http://svn.apache.org/viewvc/cassandra/trunk/src/java/org/apache/cassandra/db/HintedHandOffManager.java?rev=1202430&r1=1202429&r2=1202430&view=diff
==============================================================================
--- cassandra/trunk/src/java/org/apache/cassandra/db/HintedHandOffManager.java (original)
+++ cassandra/trunk/src/java/org/apache/cassandra/db/HintedHandOffManager.java Tue Nov 15 21:32:06 2011
@@ -230,7 +230,7 @@ public class HintedHandOffManager implem
     private void deliverHintsToEndpoint(InetAddress endpoint) throws IOException, DigestMismatchException, InvalidRequestException, TimeoutException, InterruptedException
     {
         ColumnFamilyStore hintStore = Table.open(Table.SYSTEM_TABLE).getColumnFamilyStore(HINTS_CF);
-        if (hintStore.getSSTables().isEmpty())
+        if (hintStore.isEmpty())
             return; // nothing to do, don't confuse users by logging a no-op handoff
 
         try
@@ -289,7 +289,7 @@ public class HintedHandOffManager implem
                     if (ByteBufferUtil.string(subColumn.name()).contains(SEPARATOR_08))
                     {
                         logger_.debug("0.8-style hint found.  This should have been taken care of by purgeIncompatibleHints");
-                        deleteHint(tokenBytes, hint.name(), subColumn.timestamp());
+                        deleteHint(tokenBytes, hint.name(), hint.maxTimestamp());
                         continue page;
                     }
                 }
@@ -307,7 +307,7 @@ public class HintedHandOffManager implem
 
                 if (sendMutation(endpoint, rm))
                 {
-                    deleteHint(tokenBytes, hint.name(), versionColumn.timestamp());
+                    deleteHint(tokenBytes, hint.name(), hint.maxTimestamp());
                     rowsReplayed++;
                 }
                 else

Modified: cassandra/trunk/src/resources/org/apache/cassandra/cli/CliHelp.yaml
URL: http://svn.apache.org/viewvc/cassandra/trunk/src/resources/org/apache/cassandra/cli/CliHelp.yaml?rev=1202430&r1=1202429&r2=1202430&view=diff
==============================================================================
--- cassandra/trunk/src/resources/org/apache/cassandra/cli/CliHelp.yaml (original)
+++ cassandra/trunk/src/resources/org/apache/cassandra/cli/CliHelp.yaml Tue Nov 15 21:32:06 2011
@@ -18,8 +18,6 @@
 # Help file for online commands in Yaml.
 
 banner: |
-    Welcome to the Cassandra CLI.
-
     Type 'help;' or '?' for help.
     Type 'quit;' or 'exit;' to quit.