Github user eolivelli commented on a diff in the pull request:

    https://github.com/apache/zookeeper/pull/632#discussion_r223181364
  
    --- Diff: 
zookeeper-server/src/main/java/org/apache/zookeeper/server/DataTree.java ---
    @@ -1521,4 +1562,179 @@ public boolean removeWatch(String path, WatcherType 
type, Watcher watcher) {
         public ReferenceCountedACLCache getReferenceCountedAclCache() {
             return aclCache;
         }
    +
    +    /**
    +     * Add the digest to the historical list, and update the latest zxid 
digest.
    +     */
    +    private void logZxidDigest(long zxid, long digest) {
    +        ZxidDigest zxidDigest = new ZxidDigest(zxid, 
DigestCalculator.DIGEST_VERSION, digest);
    +        lastProcessedZxidDigest = zxidDigest;
    +        if (zxidDigest.zxid % 128 == 0) {
    +            synchronized (digestLog) {
    +                digestLog.add(zxidDigest);
    +                if (digestLog.size() > DIGEST_LOG_LIMIT) {
    +                    digestLog.poll();
    +                }
    +            }
    +        }
    +    }
    +
    +    /**
    +     * Serializing the digest to snapshot, this is done after the data 
tree 
    +     * is being serialized, so when we replay the txns and it hits this 
zxid 
    +     * we know we should be in a non-fuzzy state, and have the same 
digest. 
    +     *
    +     * @param oa the output stream to write to 
    +     * @return true if the digest is serialized successfully
    +     */
    +    public Boolean serializeZxidDigest(OutputArchive oa) throws 
IOException {
    --- End diff --
    
    Nit: boolean not Boolean


---

Reply via email to