[
https://issues.apache.org/jira/browse/CASSANDRA-11595?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15421501#comment-15421501
]
Andy Tolbert commented on CASSANDRA-11595:
------------------------------------------
{quote}
In general, our philosophy is that if there's a problem with your commitlog we
die and notify you unless you specifically configure otherwise. Also, the
possibility of introducing a bug that leads to data loss with auto-deletion is
sufficient for me to advocate against it.
{quote}
That seems fair to me. Something went wrong, the user should take a step back
and think about it.
Although in this case it's not particularly user friendly, there's nothing in
the file, so there really is no recovery path for that particular file. The
user may not understand that the file is empty - since it is 32MB after all,
albeit zero'd out - and may not understand the only corrective course is to
remove/move away the commitlog.
Overall, I agree the fact that the file is empty in the first place is the main
problem (although caused by some external factor like powercycling the system)
- not that C* refuses to start because of it.
> Cassandra cannot start because of empty commitlog
> -------------------------------------------------
>
> Key: CASSANDRA-11595
> URL: https://issues.apache.org/jira/browse/CASSANDRA-11595
> Project: Cassandra
> Issue Type: Bug
> Reporter: n0rad
> Assignee: Benjamin Lerer
>
> After the crash of CASSANDRA-11594.
> Cassandra try to restart and fail because of commit log replay.
> Same on 4 of the crashed nodes out of 6.
> ```
> org.apache.cassandra.db.commitlog.CommitLogReplayer$CommitLogReplayException:
> Could not read commit log descriptor in file
> /data/commitlog/CommitLog-6-1460632496764.log
> at
> org.apache.cassandra.db.commitlog.CommitLogReplayer.handleReplayError(CommitLogReplayer.java:644)
> [apache-cassandra-3.0.5.jar:3.0.5]
> ```
> This file is empty and is not the commitlog with the latest date.
> ```
> ...
> -rw-r--r-- 1 root root 32M Apr 16 21:46 CommitLog-6-1460632496761.log
> -rw-r--r-- 1 root root 32M Apr 16 21:47 CommitLog-6-1460632496762.log
> -rw-r--r-- 1 root root 32M Apr 16 21:47 CommitLog-6-1460632496763.log
> -rw-r--r-- 1 root root 0 Apr 16 21:47 CommitLog-6-1460632496764.log
> -rw-r--r-- 1 root root 32M Apr 16 21:50 CommitLog-6-1460843401097.log
> -rw-r--r-- 1 root root 32M Apr 16 21:51 CommitLog-6-1460843513346.log
> -rw-r--r-- 1 root root 32M Apr 16 21:53 CommitLog-6-1460843619271.log
> -rw-r--r-- 1 root root 32M Apr 16 21:55 CommitLog-6-1460843730533.log
> -rw-r--r-- 1 root root 32M Apr 16 21:57 CommitLog-6-1460843834129.log
> -rw-r--r-- 1 root root 32M Apr 16 21:58 CommitLog-6-1460843935094.log
> -rw-r--r-- 1 root root 32M Apr 16 22:00 CommitLog-6-1460844038543.log
> -rw-r--r-- 1 root root 32M Apr 16 22:02 CommitLog-6-1460844141003.log
> ...
> ```
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)