Kit Hui created RATIS-228:
-----------------------------
Summary: Handle zero size log_inprogress file
Key: RATIS-228
URL: https://issues.apache.org/jira/browse/RATIS-228
Project: Ratis
Issue Type: Bug
Reporter: Kit Hui
Assignee: Kit Hui
When debugging RATIS-227, test may fail with
{code}
2018-04-19 12:39:39,527 ERROR storage.LogInputStream
(LogInputStream.java:nextEntry(122)) - caught exception initializing
log_inprogress_0
java.io.EOFException: EOF before reading a complete log header
at org.apache.ratis.server.storage.LogReader.readLogHeader(LogReader.java:140)
at org.apache.ratis.server.storage.LogInputStream.init(LogInputStream.java:92)
at
org.apache.ratis.server.storage.LogInputStream.nextEntry(LogInputStream.java:120)
at
org.apache.ratis.server.storage.LogSegment.readSegmentFile(LogSegment.java:107)
at org.apache.ratis.server.storage.LogSegment.loadSegment(LogSegment.java:129)
at
org.apache.ratis.server.storage.RaftLogCache.loadSegment(RaftLogCache.java:110)
at
org.apache.ratis.server.storage.SegmentedRaftLog.loadLogSegments(SegmentedRaftLog.java:153)
at
org.apache.ratis.server.storage.SegmentedRaftLog.open(SegmentedRaftLog.java:121)
at org.apache.ratis.server.impl.ServerState.initLog(ServerState.java:156)
at org.apache.ratis.server.impl.ServerState.<init>(ServerState.java:101)
at org.apache.ratis.server.impl.RaftServerImpl.<init>(RaftServerImpl.java:104)
at
org.apache.ratis.server.impl.RaftServerProxy.initImpl(RaftServerProxy.java:79)
at org.apache.ratis.server.impl.RaftServerProxy.<init>(RaftServerProxy.java:66)
at
org.apache.ratis.server.impl.ServerImplUtils.lambda$newRaftServer$0(ServerImplUtils.java:40)
at org.apache.ratis.util.JavaUtils.attempt(JavaUtils.java:119)
at
org.apache.ratis.server.impl.ServerImplUtils.newRaftServer(ServerImplUtils.java:39)
at
org.apache.ratis.grpc.MiniRaftClusterWithGRpc.newRaftServer(MiniRaftClusterWithGRpc.java:63)
at org.apache.ratis.MiniRaftCluster.newRaftServer(MiniRaftCluster.java:225)
at org.apache.ratis.MiniRaftCluster.putNewServer(MiniRaftCluster.java:168)
at org.apache.ratis.MiniRaftCluster.putNewServer(MiniRaftCluster.java:164)
at org.apache.ratis.MiniRaftCluster.restartServer(MiniRaftCluster.java:198)
at
org.apache.ratis.RaftBasicTests.lambda$runTestBasicAppendEntries$0(RaftBasicTests.java:122)
at java.lang.Thread.run(Thread.java:748)
{code}
It turns out that the log_inprogress_0 file is zero size
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)