Hi, all The Apache Ratis team is pleased to announce the release of Apache Ratis 3.1.1.
Apache Ratis is the creation and maintenance of software related to a highly customizable Raft protocol implementation in Java. This is a bug-fixed version of 3.1.0, which includes a number of new features, bug-fixes, improvements and unstable commit reverts, to list all of them: ### New Features - NettyClientRpc supports sendRequestAsync. - Add a builder for RatisShell ### Bug-fixes - Surround with [] only if hostName is a IPv6 string - Fix the issue where RaftServerImpl.appendEntries may be blocked indefinitely - logMetadata could miss appending the metadataEntry with the lastCommitIndex - Fixed the issue that RatisServer could not start after frequent restarts - The leader keeps sending inconsistent entries repeatedly to followers - Remove uncessary error log in JVMPauseMonitor When GC is serious - Fix LogAppenderDefault in handling of INCONSISTENCY - SegmentedRaftLogWorker should close the stream before releasing the buffer - Thread wait when installing snapshot - Follower hangs until the next trigger to take a snapshot - Fixed possible issues caused by concurrent deletion and election when member changes - Do not perform leader election if the current RaftServer has not started yet - Snapshot transfer may cause followers to trigger reloadStateMachine incorrectly - The old leader may send appendEntries after term changed - GrpcLogAppender stucks while sending an installSnapshot notification request - Md5 mismatch when snapshot install - Let the snapshot sender and receiver use a new digester each time ### Improvements - Extract common logic of ratis-shell to RaftUtils for reuse - Publish SBOM artifacts - No need for manual assembly:single execution - Improve assembly process - Set javac --release when compiling with JDK 9+ - Avoid including build timestamp in artifacts - javadoc jars should not include non-doc items - Optimize NotLeaderException message - Ignore http proxy for ratis grpc client & server - Double shutdown in TestLeaderInstallSnapshot. - Fix flaky RetryCacheTests and InstallSnapshotFromLeaderTests - Fix checkstyle:ParameterNumber in GrpcService - Use consistent method names and parameter types in RaftUtils. - ratis-version.properties missing from src bundle - No need for manual assembly:single execution when mvn deploy - Enhance make_rc.sh for non-first rc at release time ### Revert - Revert "Refactor client request processing to support reference count." - Revert "Move TermIndex.PRIVATE_CACHE to Util.CACHE" - Revert "RATIS-2099. Cache TermIndexImpl instead of using anonymous class The full changes are available at: https://ratis.apache.org/post/3.1.1.html The release is available for download at: https://ratis.apache.org/downloads.html Maven artifacts can be found at https://central.sonatype.com/search?q=org.apache.ratis&smo=true Regards, Apache Ratis Team
