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 2009/09/30 21:40:04 UTC

svn commit: r820418 - in /incubator/cassandra/trunk/src/java/org/apache/cassandra: db/ReadVerbHandler.java service/ReadResponseResolver.java service/StorageProxy.java

Author: jbellis
Date: Wed Sep 30 19:40:04 2009
New Revision: 820418

URL: http://svn.apache.org/viewvc?rev=820418&view=rev
Log:
logging for digests.  patch by jbellis for CASSANDRA-462

Modified:
    incubator/cassandra/trunk/src/java/org/apache/cassandra/db/ReadVerbHandler.java
    incubator/cassandra/trunk/src/java/org/apache/cassandra/service/ReadResponseResolver.java
    incubator/cassandra/trunk/src/java/org/apache/cassandra/service/StorageProxy.java

Modified: incubator/cassandra/trunk/src/java/org/apache/cassandra/db/ReadVerbHandler.java
URL: http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/db/ReadVerbHandler.java?rev=820418&r1=820417&r2=820418&view=diff
==============================================================================
--- incubator/cassandra/trunk/src/java/org/apache/cassandra/db/ReadVerbHandler.java (original)
+++ incubator/cassandra/trunk/src/java/org/apache/cassandra/db/ReadVerbHandler.java Wed Sep 30 19:40:04 2009
@@ -29,6 +29,7 @@
 import org.apache.cassandra.net.Message;
 import org.apache.cassandra.net.MessagingService;
 import org.apache.cassandra.service.StorageService;
+import org.apache.cassandra.utils.FBUtilities;
 
 import org.apache.log4j.Logger;
 
@@ -79,6 +80,8 @@
             ReadResponse readResponse;
             if (readCommand.isDigestQuery())
             {
+                if (logger_.isDebugEnabled())
+                    logger_.debug("digest is " + FBUtilities.bytesToHex(row.digest()));
                 readResponse = new ReadResponse(row.digest());
             }
             else

Modified: incubator/cassandra/trunk/src/java/org/apache/cassandra/service/ReadResponseResolver.java
URL: http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/service/ReadResponseResolver.java?rev=820418&r1=820417&r2=820418&view=diff
==============================================================================
--- incubator/cassandra/trunk/src/java/org/apache/cassandra/service/ReadResponseResolver.java (original)
+++ incubator/cassandra/trunk/src/java/org/apache/cassandra/service/ReadResponseResolver.java Wed Sep 30 19:40:04 2009
@@ -34,6 +34,8 @@
 import org.apache.cassandra.net.EndPoint;
 import org.apache.cassandra.net.Message;
 import org.apache.cassandra.utils.LogUtil;
+import org.apache.cassandra.utils.FBUtilities;
+
 import org.apache.log4j.Logger;
 
 
@@ -76,10 +78,7 @@
 		{					            
             byte[] body = response.getMessageBody();
             bufIn.reset(body, body.length);
-            long start = System.currentTimeMillis();
             ReadResponse result = ReadResponse.serializer().deserialize(bufIn);
-            if (logger_.isDebugEnabled())
-              logger_.debug( "Response deserialization time : " + (System.currentTimeMillis() - start) + " ms.");
             if (result.isDigestQuery())
             {
                 digest = result.digest();
@@ -102,11 +101,12 @@
                 if (!Arrays.equals(row.digest(), digest))
                 {
                     /* Wrap the key as the context in this exception */
-					throw new DigestMismatchException(row.key());
-				}
-			}
-		}
-		
+                    String s = String.format("Mismatch for key %s (%s vs %s)", row.key(), FBUtilities.bytesToHex(row.digest()), FBUtilities.bytesToHex(digest));
+                    throw new DigestMismatchException(s);
+                }
+            }
+        }
+
         /* If the rowList is empty then we had some exception above. */
         if (rowList.size() == 0)
         {

Modified: incubator/cassandra/trunk/src/java/org/apache/cassandra/service/StorageProxy.java
URL: http://svn.apache.org/viewvc/incubator/cassandra/trunk/src/java/org/apache/cassandra/service/StorageProxy.java?rev=820418&r1=820417&r2=820418&view=diff
==============================================================================
--- incubator/cassandra/trunk/src/java/org/apache/cassandra/service/StorageProxy.java (original)
+++ incubator/cassandra/trunk/src/java/org/apache/cassandra/service/StorageProxy.java Wed Sep 30 19:40:04 2009
@@ -404,7 +404,7 @@
                     QuorumResponseHandler<Row> quorumResponseHandlerRepair = new QuorumResponseHandler<Row>(
                             DatabaseDescriptor.getQuorum(),
                             readResponseResolverRepair);
-                    logger.info("DigestMismatchException: " + command.key);
+                    logger.info("DigestMismatchException: " + ex.getMessage());
                     Message messageRepair = command.makeReadMessage();
                     MessagingService.getMessagingInstance().sendRR(messageRepair, commandEndPoints.get(commandIndex), quorumResponseHandlerRepair);
                     try