Corrupted Commit logs
---------------------
Key: CASSANDRA-2128
URL: https://issues.apache.org/jira/browse/CASSANDRA-2128
Project: Cassandra
Issue Type: Bug
Affects Versions: 0.6.11
Reporter: Paul Querna
Two of our nodes had a hard failure.
They both came up with a corrupted commit log.
On startup we get this:
{quote}
011-02-07_19:34:03.95124 INFO - Finished reading
/var/lib/cassandra/commitlog/CommitLog-1297099954252.log
2011-02-07_19:34:03.95400 ERROR - Exception encountered during startup.
2011-02-07_19:34:03.95403 java.io.EOFException
2011-02-07_19:34:03.95403 at
java.io.DataInputStream.readUnsignedShort(DataInputStream.java:323)
2011-02-07_19:34:03.95404 at
java.io.DataInputStream.readUTF(DataInputStream.java:572)
2011-02-07_19:34:03.95405 at
java.io.DataInputStream.readUTF(DataInputStream.java:547)
2011-02-07_19:34:03.95406 at
org.apache.cassandra.db.RowMutationSerializer.deserialize(RowMutation.java:363)
2011-02-07_19:34:03.95407 at
org.apache.cassandra.db.RowMutationSerializer.deserialize(RowMutation.java:318)
2011-02-07_19:34:03.95408 at
org.apache.cassandra.db.commitlog.CommitLog.recover(CommitLog.java:240)
2011-02-07_19:34:03.95409 at
org.apache.cassandra.db.commitlog.CommitLog.recover(CommitLog.java:172)
2011-02-07_19:34:03.95409 at
org.apache.cassandra.thrift.CassandraDaemon.setup(CassandraDaemon.java:115)
2011-02-07_19:34:03.95410 at
org.apache.cassandra.thrift.CassandraDaemon.main(CassandraDaemon.java:224)
2011-02-07_19:34:03.95422 Exception encountered during startup.
2011-02-07_19:34:03.95436 java.io.EOFException
2011-02-07_19:34:03.95447 at
java.io.DataInputStream.readUnsignedShort(DataInputStream.java:323)
2011-02-07_19:34:03.95458 at
java.io.DataInputStream.readUTF(DataInputStream.java:572)
2011-02-07_19:34:03.95468 at
java.io.DataInputStream.readUTF(DataInputStream.java:547)
2011-02-07_19:34:03.95478 at
org.apache.cassandra.db.RowMutationSerializer.deserialize(RowMutation.java:363)
2011-02-07_19:34:03.95489 at
org.apache.cassandra.db.RowMutationSerializer.deserialize(RowMutation.java:318)
2011-02-07_19:34:03.95499 at
org.apache.cassandra.db.commitlog.CommitLog.recover(CommitLog.java:240)
2011-02-07_19:34:03.95510 at
org.apache.cassandra.db.commitlog.CommitLog.recover(CommitLog.java:172)
2011-02-07_19:34:03.95521 at
org.apache.cassandra.thrift.CassandraDaemon.setup(CassandraDaemon.java:115)
2011-02-07_19:34:03.95531 at
org.apache.cassandra.thrift.CassandraDaemon.main(CassandraDaemon.java:224)
{quote}
On node A, the commit log in question is 100mb.
On node B, the commit log in question is 60mb.
An ideal resolution would be if EOF is hit early, log something, but don't stop
the startup. Instead process everything that we have done so far, and keep
going.
--
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira