  重现过程:只需一个线程持续发SetRequest,为了加剧内存上升的过程,把value设的比较大,例如1k,持续一会后jvm就崩了。 猜测:Segment里面有个entries的list,只add没有remove,相当于把报文都存到内存了
Activity
wenweihu86 commentedon Aug 17, 2019
@winflex 在每次snapshot结束后,会调用SegmentedLog.truncatePrefix删除多余的内存segment。
目前默认的snapshot间隔是1小时,由于你的value比较大,所以建议把snapshot间隔调小一些。
配置这个字段:RaftOptions.snapshotPeriodSeconds