avijayanhwx opened a new pull request #315:
URL: https://github.com/apache/incubator-ratis/pull/315


   ## What changes were proposed in this pull request?
   In SegmentedRaftLog#syncWithSnapshot, if the snapshot index is the last open 
segment index, then the open segment is finalized and closed (which releases 
the SegmentedRaftLogOutputStream). In the next step, while rolling the open 
segment in the cache, a new open segment is created. However, the output stream 
has already been closed. This causes the peer to terminate when a transaction 
comes in after the syncWithSnapshot call.
   
   Instead of creating a new open segment here, we should let any new 
transaction coming in to the system create a new open segment through the 
StartOpenSegment call which re-initializes the output stream.
   
   ## What is the link to the Apache JIRA
   https://issues.apache.org/jira/browse/RATIS-1194
   
   ## How was this patch tested?
   Manually tested.


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to