Unexpected exceptions' stacktraces can be lost ----------------------------------------------
Key: CASSANDRA-1462 URL: https://issues.apache.org/jira/browse/CASSANDRA-1462 Project: Cassandra Issue Type: Bug Components: Core Affects Versions: 0.6.5 Reporter: David King o.a.c.thrift.Cassandra.login.process has a catch that looks like: } catch (Throwable th) { LOGGER.error("Internal error processing login", th); TApplicationException x = new TApplicationException(TApplicationException.INTERNAL_ERROR, "Internal error processing login"); oprot.writeMessageBegin(new TMessage("login", TMessageType.EXCEPTION, seqid)); x.write(oprot); oprot.writeMessageEnd(); oprot.getTransport().flush(); return; } Unfortunately this loses vital debugging information as it loses the stack trace associated with the exception. In particular it made tracking down the source of this very difficult: ERROR [pool-1-thread-9723] 2010-09-03 12:34:16,978 Cassandra.java (line 1659) Internal error processing batch_mutate java.lang.NullPointerException ERROR [pool-1-thread-9556] 2010-09-03 12:34:17,031 Cassandra.java (line 1659) Internal error processing batch_mutate java.lang.NullPointerException ERROR [pool-1-thread-9556] 2010-09-03 12:34:17,129 Cassandra.java (line 1659) Internal error processing batch_mutate java.lang.NullPointerException ERROR [pool-1-thread-9794] 2010-09-03 12:34:17,190 Cassandra.java (line 1659) Internal error processing batch_mutate java.lang.NullPointerException ERROR [pool-1-thread-9794] 2010-09-03 12:34:17,245 Cassandra.java (line 1659) Internal error processing batch_mutate java.lang.NullPointerException ERROR [pool-1-thread-9794] 2010-09-03 12:34:17,285 Cassandra.java (line 1659) Internal error processing batch_mutate java.lang.NullPointerException ERROR [pool-1-thread-9794] 2010-09-03 12:34:17,392 Cassandra.java (line 1659) Internal error processing batch_mutate java.lang.NullPointerException I'd like to file a bug for that one too, but I have no idea what caused it :) For reference, my log4j.properties: log4j.rootLogger=INFO,stdout,R # stdout log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%5p %d{HH:mm:ss,SSS} %m%n # rolling log file log4j.appender.R=org.apache.log4j.RollingFileAppender log4j.appender.file.maxFileSize=20MB log4j.appender.file.maxBackupIndex=50 log4j.appender.R.layout=org.apache.log4j.PatternLayout log4j.appender.R.layout.ConversionPattern=%5p [%t] %d{ISO8601} %F (line %L) %m%n # Edit the next line to point to your logs directory log4j.appender.R.File=/cassandra/log/system.log # Application logging options #log4j.logger.com.facebook=DEBUG #log4j.logger.com.facebook.infrastructure.gms=DEBUG #log4j.logger.com.facebook.infrastructure.db=DEBUG -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.