Xinyu, thanks a lot for the quick fix!

I checked all the post 3.1.0 commits.  All of them except for RATIS-2114
(zero copy bug fix) are bug fixes or minor improvements [1].  How about we
include all of them?  Please review.

[1]
https://github.com/apache/ratis/compare/branch-3.1.0...branch-3.1.1_review

Tsz-Wo

### Below are the cherry-pick commands, copy & paste and fix conflicts
manually.

git cherry-pick 95ea26c29e457ff0f8aee7ff7106536c42c4dc52 #RATIS-2095.
Extract common logic of ratis-shell to RaftUtils for reuse (#1098)
# skip git cherry-pick 34fa62ce7a59decf3fc8671f730f100e9bfe3ef6
#RATIS-2114. Corruption due to SegmentedRaftLogWorker queue LogEntry
without reference counter (#1113)
git cherry-pick 19ead3912fc4017362645cd64015f9ae0bd6ad6a #RATIS-2110.
Publish SBOM artifacts (#1110)
git cherry-pick ee9e14f54a5053e0ee48f22773f410931b0ee9df #RATIS-2117. No
need for manual assembly:single execution (#1115)
# skip git cherry-pick c31806dbdcf2f288c57684958447a6ddfe6fc29c
#RATIS-2120. Bump version after 3.1.0 release (#1118)
git cherry-pick 1cb6908a573a8948369c9eb0a52fa62c7ae63de3 #RATIS-2118.
Improve assembly process (#1117)
git cherry-pick eeaf6a463fa9bb59fbbf747c8bc042590c300f5d #RATIS-2121. Set
javac --release when compiling with JDK 9+ (#1119)
git cherry-pick 32745c3c4ecb9777a6d44e703134ef1181ad2dd2 #RATIS-2116. Fix
the issue where RaftServerImpl.appendEntries may be blocked indefinitely
(#1116)
# fix conflict manually

git cherry-pick d10167839cf04728b9fd0439add8db64eefe32a4 #RATIS-1840. Avoid
including build timestamp in artifacts (#1114)
git cherry-pick 9bb6953217186d68362ae68492d7080874431158 #RATIS-2125.
javadoc jars should not include non-doc items (#1123)
git cherry-pick 7825b4f032653efc0cf75ff7e650f8055707f9d1 #RATIS-1071.
NettyClientRpc supports sendRequestAsync. Contributed by Rui Wang and
Tsz-Wo Nicholas Sze. (#1122)
git cherry-pick fb4968f1738172615d9c21f1673e49599dc13766 #RATIS-2131.
Surround with [] only if hostName is a IPv6 string (#1125)
git cherry-pick 011dc0addd55e755e3b59282891d2dc06d283c36 #RATIS-2126.
Optimize NotLeaderException message (#1124)
git cherry-pick 99925e3224341b95bd195d728a220d41ba3d924a #RATIS-2133.
Ignore http proxy for ratis grpc client & server (#1128)
git cherry-pick a793e6c45722e43f295519b56bf99ce876cdb251 #RATIS-2104.
Double shutdown in TestLeaderInstallSnapshot. (#1108)
git cherry-pick 4ba463789df7876837c728ce6477fd18b787fed9 #RATIS-2134.
 `logMetadata` could miss appending the `metadataEntry` with the
lastCommitIndex (#1130)
# fix conflict manually

git cherry-pick ebeab934472c42da5344729f35a7758baa596a13 #RATIS-2136 Fixed
the issue that RatisServer could not start after frequent restarts (#1131)
git cherry-pick 177097cd31a103543680b0a063774d6f3ab86a0f #RATIS-2115. Fix
flaky RetryCacheTests and InstallSnapshotFromLeaderTests. (#1129)
git cherry-pick 69ec8f43621e30c7bddb032e8b2c18533a86053e #RATIS-2135. The
leader keeps sending inconsistent entries repeatedly to followers. (#1132)
git cherry-pick 217fdb082c18debf4b987b2f8536a3bf1d9e92bd #RATIS-2138 Remove
uncessary error log in JVMPauseMonitor When GC is serious (#1133)
git cherry-pick 8d4c4ae3082f24e22aab454ec144f384ec6e1b1a #RATIS-2139. Fix
checkstyle:ParameterNumber in GrpcService. (#1134)
# fix conflict manually

git cherry-pick 287a4ac7c467c5a5132c0e85bc83923e27a0f064 #RATIS-2137. Fix
LogAppenderDefault in handling of INCONSISTENCY. (#1136)
# fix conflict manually

git cherry-pick 24fb55363e94f171ab8e1d736bdaf3745f16719f #RATIS-2144.
SegmentedRaftLogWorker should close the stream before releasing the buffer.
(#1138)
git cherry-pick 17a408f951c422294c220e565e46e7220c27377f #RATIS-2140.
Thread wait when installing snapshot. (#1137)
git cherry-pick c266cad48fd6e11d1cfba924b3451ada512a71c1 #RATIS-2113. Use
consistent method names and parameter types in RaftUtils. (#1135)

git revert 43a02109d1f0b34dd80b1e36f1d023f86f24e3ab
# fix conflict manually

### END

On Wed, Aug 21, 2024 at 7:25 PM Xinyu Tan <[email protected]> wrote:

> Hi, Tsz-Wo
>
> I have submmited a PR for RATIS-2144 and it should be included!
>
> Best
> ------------
> Xinyu Tan
>
> Tsz Wo Sze <[email protected]> 于2024年8月22日周四 08:26写道:
>
> > Duong, thanks a lot for starting the 3.1.1 discussion.
> >
> > Xinyu, agree, we should include RATIS-2138 and RATIS-2136
> >
> > The following are the outstanding issues:
> > 1. RATIS-2132: need a fix or revert RATIS-2099
> > 2. RATIS-2141: revert RATIS-1983 from 3.1.0 (the master branch is
> > already fixed)
> > 3. RATIS-2144: need a simple fix.
> >
> > I will go through the commits after.  To see if there are other issues
> > which should be included.
> >
> > Tsz-Wo
> >
> >
> >
> > On Tue, Aug 20, 2024 at 11:34 PM Xinyu Tan <[email protected]> wrote:
> >
> > > Hi, Duong
> > >
> > > We IoTDB team have fixed RATIS-2138 Remove uncessary error log in
> > > JVMPauseMonitor When GC is serious and RATIS-2136 Fixed the issue that
> > > RatisServer could not start after frequent restarts after Ratis 3.1.0.
> > >
> > > These two issues are straightforward to reproduce and easy to fix, and
> > may
> > > also be encountered in the Ozone.
> > >
> > > We hope these two issues will be included in 3.1.1 as well.
> > >
> > > Best
> > > -------------------
> > > Xinyu Tan
> > > Apache IoTDB PMC
> > >
> > > Duong Nguyen <[email protected]> 于2024年8月21日周三 09:14写道:
> > >
> > > > Hi Ratis community,
> > > >
> > > > I would like to start the discussion to release Ratis 3.1.1. While
> > > working
> > > > on adopting ratis 3.1.0 in Apache Ozone, we found a couple of
> blocking
> > > > issues with this release:
> > > > 1. RATIS-2132 <https://issues.apache.org/jira/browse/RATIS-2132>:
> > > > performance regression from RATIS-2099.
> > > > 2. RATIS-2141 <https://issues.apache.org/jira/browse/RATIS-2141>:
> > Memory
> > > > leak for stateMachineCache use cases
> > > >
> > > > The second is a critical issue that prevents Ozone from being
> released
> > > with
> > > > Ratis 3.1.0. I want to check if we can quickly roll out a Ratis 3.1.1
> > (on
> > > > top of 3.1.0) with the fixes of the mentioned issues.
> > > >
> > > > Thanks,
> > > > Duong
> > > >
> > >
> >
>

Reply via email to