Repository: cassandra
Updated Branches:
  refs/heads/trunk 46a5514c2 -> 0f5443d9c


Reintroduce stack traces for some log messages

patch by Stefan Podkowinski; reviewed by Mick Semb Wever for CASSANDRA-14528


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

Branch: refs/heads/trunk
Commit: 0f5443d9ceb3dd5f6f5aa4bb9741c73093fe404c
Parents: 46a5514
Author: Stefan Podkowinski <stefan.podkowin...@1und1.de>
Authored: Tue Jun 19 09:05:59 2018 +0200
Committer: Stefan Podkowinski <stefan.podkowin...@1und1.de>
Committed: Fri Jun 22 08:43:44 2018 +0200

----------------------------------------------------------------------
 src/java/org/apache/cassandra/auth/CassandraAuthorizer.java   | 7 ++-----
 src/java/org/apache/cassandra/batchlog/BatchlogManager.java   | 7 +++++++
 .../concurrent/AbstractLocalAwareExecutorService.java         | 2 +-
 src/java/org/apache/cassandra/concurrent/SEPWorker.java       | 4 ++--
 .../org/apache/cassandra/hints/HintsDispatchExecutor.java     | 4 +---
 5 files changed, 13 insertions(+), 11 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cassandra/blob/0f5443d9/src/java/org/apache/cassandra/auth/CassandraAuthorizer.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/auth/CassandraAuthorizer.java 
b/src/java/org/apache/cassandra/auth/CassandraAuthorizer.java
index b6b2e54..5140bcf 100644
--- a/src/java/org/apache/cassandra/auth/CassandraAuthorizer.java
+++ b/src/java/org/apache/cassandra/auth/CassandraAuthorizer.java
@@ -129,9 +129,7 @@ public class CassandraAuthorizer implements IAuthorizer
         }
         catch (RequestExecutionException | RequestValidationException e)
         {
-            logger.warn("CassandraAuthorizer failed to revoke all permissions 
of {}: {}",
-                        revokee.getRoleName(),
-                        e.getMessage());
+            logger.warn(String.format("CassandraAuthorizer failed to revoke 
all permissions of %s", revokee.getRoleName()), e);
         }
     }
 
@@ -168,8 +166,7 @@ public class CassandraAuthorizer implements IAuthorizer
         }
         catch (RequestExecutionException | RequestValidationException e)
         {
-            logger.warn("CassandraAuthorizer failed to revoke all permissions 
on {}: {}", droppedResource, e.getMessage());
-            return;
+            logger.warn(String.format("CassandraAuthorizer failed to revoke 
all permissions on %s", droppedResource), e);
         }
     }
 

http://git-wip-us.apache.org/repos/asf/cassandra/blob/0f5443d9/src/java/org/apache/cassandra/batchlog/BatchlogManager.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/batchlog/BatchlogManager.java 
b/src/java/org/apache/cassandra/batchlog/BatchlogManager.java
index f232bdc..4809bd7 100644
--- a/src/java/org/apache/cassandra/batchlog/BatchlogManager.java
+++ b/src/java/org/apache/cassandra/batchlog/BatchlogManager.java
@@ -252,6 +252,8 @@ public class BatchlogManager implements BatchlogManagerMBean
 
         Set<InetAddressAndPort> hintedNodes = new HashSet<>();
         Set<UUID> replayedBatches = new HashSet<>();
+        Exception caughtException = null;
+        int skipped = 0;
 
         // Sending out batches for replay without waiting for them, so that 
one stuck batch doesn't affect others
         for (UntypedResultSet.Row row : batches)
@@ -274,7 +276,9 @@ public class BatchlogManager implements BatchlogManagerMBean
             catch (IOException e)
             {
                 logger.warn("Skipped batch replay of {} due to {}", id, 
e.getMessage());
+                caughtException = e;
                 remove(id);
+                ++skipped;
             }
 
             if (++positionInPage == pageSize)
@@ -288,6 +292,9 @@ public class BatchlogManager implements BatchlogManagerMBean
 
         finishAndClearBatches(unfinishedBatches, hintedNodes, replayedBatches);
 
+        if (caughtException != null)
+            logger.warn(String.format("Encountered %d unexpected exceptions 
while sending out batches", skipped), caughtException);
+
         // to preserve batch guarantees, we must ensure that hints (if any) 
have made it to disk, before deleting the batches
         HintsService.instance.flushAndFsyncBlockingly(transform(hintedNodes, 
StorageService.instance::getHostIdForEndpoint));
 

http://git-wip-us.apache.org/repos/asf/cassandra/blob/0f5443d9/src/java/org/apache/cassandra/concurrent/AbstractLocalAwareExecutorService.java
----------------------------------------------------------------------
diff --git 
a/src/java/org/apache/cassandra/concurrent/AbstractLocalAwareExecutorService.java
 
b/src/java/org/apache/cassandra/concurrent/AbstractLocalAwareExecutorService.java
index 97dbe86..45b6362 100644
--- 
a/src/java/org/apache/cassandra/concurrent/AbstractLocalAwareExecutorService.java
+++ 
b/src/java/org/apache/cassandra/concurrent/AbstractLocalAwareExecutorService.java
@@ -164,7 +164,7 @@ public abstract class AbstractLocalAwareExecutorService 
implements LocalAwareExe
             catch (Throwable t)
             {
                 JVMStabilityInspector.inspectThrowable(t);
-                logger.warn("Uncaught exception on thread {}: {}", 
Thread.currentThread(), t.getMessage());
+                logger.error(String.format("Uncaught exception on thread %s", 
Thread.currentThread()), t);
                 result = t;
                 failure = true;
             }

http://git-wip-us.apache.org/repos/asf/cassandra/blob/0f5443d9/src/java/org/apache/cassandra/concurrent/SEPWorker.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/concurrent/SEPWorker.java 
b/src/java/org/apache/cassandra/concurrent/SEPWorker.java
index 918349f..29a2557 100644
--- a/src/java/org/apache/cassandra/concurrent/SEPWorker.java
+++ b/src/java/org/apache/cassandra/concurrent/SEPWorker.java
@@ -143,9 +143,9 @@ final class SEPWorker extends 
AtomicReference<SEPWorker.Work> implements Runnabl
             if (assigned != null)
                 assigned.returnWorkPermit();
             if (task != null)
-                logger.error("Failed to execute task, unexpected exception 
killed worker: {}", t.getMessage());
+                logger.error("Failed to execute task, unexpected exception 
killed worker", t);
             else
-                logger.error("Unexpected exception killed worker: {}", 
t.getMessage());
+                logger.error("Unexpected exception killed worker", t);
         }
     }
 

http://git-wip-us.apache.org/repos/asf/cassandra/blob/0f5443d9/src/java/org/apache/cassandra/hints/HintsDispatchExecutor.java
----------------------------------------------------------------------
diff --git a/src/java/org/apache/cassandra/hints/HintsDispatchExecutor.java 
b/src/java/org/apache/cassandra/hints/HintsDispatchExecutor.java
index cbbb212..92dbc29 100644
--- a/src/java/org/apache/cassandra/hints/HintsDispatchExecutor.java
+++ b/src/java/org/apache/cassandra/hints/HintsDispatchExecutor.java
@@ -240,9 +240,7 @@ final class HintsDispatchExecutor
                 }
                 catch (FSReadError e)
                 {
-                    logger.error("Failed to dispatch hints file {}: file is 
corrupted ({})",
-                                 descriptor.fileName(),
-                                 e.getMessage());
+                    logger.error(String.format("Failed to dispatch hints file 
%s: file is corrupted", descriptor.fileName()), e);
                     store.cleanUp(descriptor);
                     store.blacklist(descriptor);
                     throw e;


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org

Reply via email to