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

Reply via email to