cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Benjamin Lerer (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CASSANDRA-12539) Empty CommitLog prevents restart
Date Wed, 08 Feb 2017 17:11:41 GMT

    [ https://issues.apache.org/jira/browse/CASSANDRA-12539?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15858248#comment-15858248
] 

Benjamin Lerer commented on CASSANDRA-12539:
--------------------------------------------

||[2.2|https://github.com/apache/cassandra/compare/trunk...blerer:12539-2.2]|[utests|http://cassci.datastax.com/view/Dev/view/blerer/job/blerer-12539-2.2-testall/]|[dtests|http://cassci.datastax.com/view/Dev/view/blerer/job/blerer-12539-2.2-dtest/]|

||[3.0|https://github.com/apache/cassandra/compare/trunk...blerer:12539-3.0]|[utests|http://cassci.datastax.com/view/Dev/view/blerer/job/blerer-12539-3.0-testall/]|[dtests|http://cassci.datastax.com/view/Dev/view/blerer/job/blerer-12539-3.0-dtest/]|

||[3.11|https://github.com/apache/cassandra/compare/trunk...blerer:12539-3.11]|[utests|http://cassci.datastax.com/view/Dev/view/blerer/job/blerer-12539-3.11-testall/]|[dtests|http://cassci.datastax.com/view/Dev/view/blerer/job/blerer-12539-3.11-dtest/]|

||[trunk|https://github.com/apache/cassandra/compare/trunk...blerer:12539-trunk]|[utests|http://cassci.datastax.com/view/Dev/view/blerer/job/blerer-12539-trunk-testall/]|[dtests|http://cassci.datastax.com/view/Dev/view/blerer/job/blerer-12539-trunk-dtest/]|

The patches for 2.2 and 3.0 are the same and the patches for 3.11 and trunk arethe same.

The patch removes the use of {{RandomAccessFile}} to resize the commitlog segment file.
As we do not recycle the CommitLog files in 2.2, it is not needed anymore. The creation of
the {{MappedByteBuffer}} will automatically set the size of the file to {{DatabaseDescriptor.getCommitLogSegmentSize()}}.


By not using an extra file pointer with the {{RandomAccessFile}}, we avoid the problem that
had cause the empty commit log (which was running out of file pointers when resizing the file
segement).

[~JoshuaMcKenzie] do you want to review it? 

> Empty CommitLog prevents restart
> --------------------------------
>
>                 Key: CASSANDRA-12539
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-12539
>             Project: Cassandra
>          Issue Type: Bug
>            Reporter: Stefano Ortolani
>            Assignee: Benjamin Lerer
>
> A node just crashed (known cause: CASSANDRA-11594) but to my surprise (unlike other time)
restarting simply fails.
> Checking the logs showed:
> {noformat}
> ERROR [main] 2016-08-25 17:05:22,611 JVMStabilityInspector.java:82 - Exiting due to error
while processing commit log during initialization.
> org.apache.cassandra.db.commitlog.CommitLogReplayer$CommitLogReplayException: Could not
read commit log descriptor in file /data/cassandra/commitlog/CommitLog-6-1468235564433.log
> 	at org.apache.cassandra.db.commitlog.CommitLogReplayer.handleReplayError(CommitLogReplayer.java:650)
[apache-cassandra-3.0.8.jar:3.0.8]
> 	at org.apache.cassandra.db.commitlog.CommitLogReplayer.recover(CommitLogReplayer.java:327)
[apache-cassandra-3.0.8.jar:3.0.8]
> 	at org.apache.cassandra.db.commitlog.CommitLogReplayer.recover(CommitLogReplayer.java:148)
[apache-cassandra-3.0.8.jar:3.0.8]
> 	at org.apache.cassandra.db.commitlog.CommitLog.recover(CommitLog.java:181) [apache-cassandra-3.0.8.jar:3.0.8]
> 	at org.apache.cassandra.db.commitlog.CommitLog.recover(CommitLog.java:161) [apache-cassandra-3.0.8.jar:3.0.8]
> 	at org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:289) [apache-cassandra-3.0.8.jar:3.0.8]
> 	at org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:557) [apache-cassandra-3.0.8.jar:3.0.8]
> 	at org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:685) [apache-cassandra-3.0.8.jar:3.0.8]
> INFO  [main] 2016-08-25 17:08:56,944 YamlConfigurationLoader.java:85 - Configuration
location: file:/etc/cassandra/cassandra.yaml
> {noformat}
> Deleting the empty file fixes the problem.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Mime
View raw message