Testing zero-copy bugs fixes (not for merging) by szetszwo · Pull Request #1156 · apache/ratis

This can pass all the tests (with a few retries). Since this change is quite big (56kB) and non-trivial, I will split this to a few JIRAs:

  1. The current JIRA RATIS-2164 for fixing LeakDetector. (I will leave this PR as-is and submit another PR.)
  2. RATIS-2151 for fixing gRPC.
  3. RATIS-2159 for fixing other non-gRPC cases.

I will see if (2) and (3) needed to be further split.

BTW, we should move LeakDetector enabling from MiniRaftClusterWithGrpc to MiniRaftCluster. It will be able to detect more failures.