+1

Thanks for putting this together, Andor. I evaluated the candidate using Claude 
and found the following.

Verified:

* SHA-512 checksums for both source and binary tarballs.
* GPG signatures on both tarballs and on the staged Maven artifacts
  (jar, pom, sources) — all good, signed with 
3F7A1D16FA4217B1DC75E1C9FFE35B7F15DFA1BA,
  which is present in the project KEYS file.
* The source tarball is byte-identical to the release-3.9.6-0 tag
  (1461 files, zero diffs).
* The zookeeper-3.9.6.jar in the Maven staging repo is byte-identical
  (same SHA-256) to the one in the binary tarball.
* The running server reports version 3.9.6-a355171b..., matching the tag commit.
* branch-3.9 contains only "Prepared 3.9.7-SNAPSHOT" after the tag, so
  nothing was left out of the candidate.
* LICENSE/NOTICE and the set of bundled jars match released 3.9.5.
* Built from source on JDK 11: clean. Test suite: 3171 tests, 0 failures,
  0 errors, 4 skipped (reproduced across two independent full runs).
* Standalone smoke test from the binary tarball: CRUD, ACL enforcement,
  four-letter words, and AdminServer all behave correctly.
* Smoke tests using a three-node ensemble: quorum formed, writes on a follower
  replicated to all members, killed the leader and re-election succeeded, data 
survived,
  writes continued on a 2/3 quorum, and the restarted member rejoined and
  caught up on data written while it was down.
* zkCli works on JDK 8, 11 and 21 — no regression from the JLine 3.30.14
  upgrade (ZOOKEEPER-5075).

Tested on macOS (arm64).

A couple of non-blocking observations, all release-notes hygiene:

1. The release notes omit five changes that are in the tag, because their
   fixVersion is 3.10.0 or unset:

     ZOOKEEPER-5083 - Upgrade Jackson-databind to 2.22.2 (security)
     ZOOKEEPER-5085 - Remove unused vulnerable prototype.js (security,
                      still unresolved with no fixVersion)
     ZOOKEEPER-4992 - Avoid overriding same-subject certs in PEM trust store
     ZOOKEEPER-5050 - Enhanced AdminServer documentation (still unresolved
                      with no fixVersion)
     ZOOKEEPER-5035 - Remove loggraph from contrib

   The first two are security-relevant, so users scanning the notes for CVE
   coverage would miss them.

2. ZOOKEEPER-5041 is listed in the release notes but is resolved as
   "Won't Fix". The Netty CVE it describes was addressed by ZOOKEEPER-5056,
   5077 and 5086, so it is probably worth dropping from the notes.

   Both of the above are JIRA metadata and can be corrected without
   a new candidate, since the notes are generated dynamically.

One test, QuorumZxidSyncTest, had its surefire fork die during the full
runs, but it is untouched by this release, sets no system-exit guard, and
passes consistently when run on its own. My machine was heavily loaded at
the time, so I am treating it as local resource pressure rather than
anything in the candidate.

-Flavio


> On 8 Sep 2026, at 18:00, Patrick Hunt <[email protected]> wrote:
> 
> +1 lgtm. xsum/sig validate, licenses look right and was able to build fine.
> 
> Thanks!
> 
> Patrick
> 
> On Thu, Sep 3, 2026 at 12:45 PM Andor Molnár <[email protected]> wrote:
> 
>> Hi,
>> 
>> This is a release candidate for 3.9.6.
>> 
>> This is a minor release with bug- and security fixes.
>> 
>> The full release notes is available at:
>> 
>> https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12310801&version=12356754
>> 
>> *** Please download, test and vote by September 11th 2026, 23:59 UTC+0. ***
>> 
>> Source files:
>> 
>> https://dist.apache.org/repos/dist/dev/zookeeper/zookeeper-3.9.6-candidate-0/
>> 
>> Maven staging repo:
>> https://repository.apache.org/content/repositories/orgapachezookeeper-1117/
>> 
>> The release candidate tag in git to be voted upon: release-3.9.6-0
>> https://github.com/apache/zookeeper/tree/release-3.9.6-0
>> 
>> ZooKeeper's KEYS file containing PGP keys we use to sign the release:
>> https://www.apache.org/dist/zookeeper/KEYS
>> 
>> The staging version of the website is:
>> 
>> https://dist.apache.org/repos/dist/dev/zookeeper/zookeeper-3.9.6-candidate-0/website/index.html
>> 
>> 
>> Should we release this candidate?
>> 
>> Andor
>> 
>> 
>> 

Reply via email to