[ 
https://issues.apache.org/jira/browse/ZOOKEEPER-1473?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13954514#comment-13954514
 ] 

Hadoop QA commented on ZOOKEEPER-1473:
--------------------------------------

-1 overall.  Here are the results of testing the latest attachment 
  http://issues.apache.org/jira/secure/attachment/12637674/ZOOKEEPER-1473.patch
  against trunk revision 1583083.

    +1 @author.  The patch does not contain any @author tags.

    -1 tests included.  The patch doesn't appear to include any new or modified 
tests.
                        Please justify why no new tests are needed for this 
patch.
                        Also please list what manual steps were performed to 
verify this patch.

    +1 javadoc.  The javadoc tool did not generate any warning messages.

    +1 javac.  The applied patch does not increase the total number of javac 
compiler warnings.

    +1 findbugs.  The patch does not introduce any new Findbugs (version 1.3.9) 
warnings.

    +1 release audit.  The applied patch does not increase the total number of 
release audit warnings.

    -1 core tests.  The patch failed core unit tests.

    +1 contrib tests.  The patch passed contrib unit tests.

Test results: 
https://builds.apache.org/job/PreCommit-ZOOKEEPER-Build/2005//testReport/
Findbugs warnings: 
https://builds.apache.org/job/PreCommit-ZOOKEEPER-Build/2005//artifact/trunk/build/test/findbugs/newPatchFindbugsWarnings.html
Console output: 
https://builds.apache.org/job/PreCommit-ZOOKEEPER-Build/2005//console

This message is automatically generated.

> Committed proposal log retains triple the memory it needs to
> ------------------------------------------------------------
>
>                 Key: ZOOKEEPER-1473
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-1473
>             Project: ZooKeeper
>          Issue Type: Bug
>          Components: server
>            Reporter: Henry Robinson
>            Assignee: Thawan Kooburat
>             Fix For: 3.5.0
>
>         Attachments: ZOOKEEPER-1473.patch, ZOOKEEPER-1473.patch, 
> ZOOKEEPER-1473.patch
>
>
> ZKDatabase.committedLog retains the past 500 transactions to enable fast 
> catch-up. This works great, but it's using triple the memory it needs to by 
> retaining three copies of the data part of any transaction.
> * The first is in committedLog[i].request.request.hb - a heap-allocated 
> {{ByteBuffer}}.
> * The second is in committedLog[i].request.txn.data - a jute-serialised 
> record of the transaction
> * The third is in committedLog[i].packet.data - also jute-serialised, 
> seemingly uninitialised data.
> This means that a ZK-server could be using 1G of memory more than it should 
> be in the worst case. We should use just one copy of the data, even if we 
> really have to refer to it 3 times. 



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to