You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@zookeeper.apache.org by "Lei Zhang (JIRA)" <ji...@apache.org> on 2010/06/24 23:38:53 UTC

[jira] Created: (ZOOKEEPER-792) zkpython memory leak

zkpython memory leak
--------------------

                 Key: ZOOKEEPER-792
                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-792
             Project: Zookeeper
          Issue Type: Bug
          Components: contrib-bindings
    Affects Versions: 3.3.1
         Environment: vmware workstation - guest OS:Linux python:2.4.3
            Reporter: Lei Zhang


We recently upgraded zookeeper from 3.2.1 to 3.3.1, now we are seeing less client deadlock on session expiration, which is a definite plus!

Unfortunately we are seeing memory leak that requires our zk clients to be restarted every half-day. Valgrind result:

==8804== 25 (12 direct, 13 indirect) bytes in 1 blocks are definitely lost in loss record 255 of 670
==8804==    at 0x4021C42: calloc (vg_replace_malloc.c:418)
==8804==    by 0x5047B42: parse_acls (zookeeper.c:369)
==8804==    by 0x5047EF6: pyzoo_create (zookeeper.c:1009)
==8804==    by 0x40786CC: PyCFunction_Call (in /usr/lib/libpython2.4.so.1.0)
==8804==    by 0x40B31DC: PyEval_EvalFrame (in /usr/lib/libpython2.4.so.1.0)
==8804==    by 0x40B4485: PyEval_EvalCodeEx (in /usr/lib/libpython2.4.so.1.0)


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (ZOOKEEPER-792) zkpython memory leak

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/ZOOKEEPER-792?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12909609#action_12909609 ] 

Hudson commented on ZOOKEEPER-792:
----------------------------------

Integrated in ZooKeeper-trunk #936 (See [https://hudson.apache.org/hudson/job/ZooKeeper-trunk/936/])
    

> zkpython memory leak
> --------------------
>
>                 Key: ZOOKEEPER-792
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-792
>             Project: Zookeeper
>          Issue Type: Bug
>          Components: contrib-bindings
>    Affects Versions: 3.3.1
>         Environment: vmware workstation - guest OS:Linux python:2.4.3
>            Reporter: Lei Zhang
>            Assignee: Lei Zhang
>             Fix For: 3.3.2, 3.4.0
>
>         Attachments: ZOOKEEPER-792.patch, ZOOKEEPER-792.patch, ZOOKEEPER-792.patch
>
>
> We recently upgraded zookeeper from 3.2.1 to 3.3.1, now we are seeing less client deadlock on session expiration, which is a definite plus!
> Unfortunately we are seeing memory leak that requires our zk clients to be restarted every half-day. Valgrind result:
> ==8804== 25 (12 direct, 13 indirect) bytes in 1 blocks are definitely lost in loss record 255 of 670
> ==8804==    at 0x4021C42: calloc (vg_replace_malloc.c:418)
> ==8804==    by 0x5047B42: parse_acls (zookeeper.c:369)
> ==8804==    by 0x5047EF6: pyzoo_create (zookeeper.c:1009)
> ==8804==    by 0x40786CC: PyCFunction_Call (in /usr/lib/libpython2.4.so.1.0)
> ==8804==    by 0x40B31DC: PyEval_EvalFrame (in /usr/lib/libpython2.4.so.1.0)
> ==8804==    by 0x40B4485: PyEval_EvalCodeEx (in /usr/lib/libpython2.4.so.1.0)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (ZOOKEEPER-792) zkpython memory leak

Posted by "Lei Zhang (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/ZOOKEEPER-792?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12897986#action_12897986 ] 

Lei Zhang commented on ZOOKEEPER-792:
-------------------------------------

We've been using this patch in production (16-node cluster) for over a month. I'd like to have it go into never release. Can somebody please code review?

> zkpython memory leak
> --------------------
>
>                 Key: ZOOKEEPER-792
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-792
>             Project: Zookeeper
>          Issue Type: Bug
>          Components: contrib-bindings
>    Affects Versions: 3.3.1
>         Environment: vmware workstation - guest OS:Linux python:2.4.3
>            Reporter: Lei Zhang
>            Assignee: Lei Zhang
>             Fix For: 3.3.2, 3.4.0
>
>         Attachments: ZOOKEEPER-792.patch
>
>
> We recently upgraded zookeeper from 3.2.1 to 3.3.1, now we are seeing less client deadlock on session expiration, which is a definite plus!
> Unfortunately we are seeing memory leak that requires our zk clients to be restarted every half-day. Valgrind result:
> ==8804== 25 (12 direct, 13 indirect) bytes in 1 blocks are definitely lost in loss record 255 of 670
> ==8804==    at 0x4021C42: calloc (vg_replace_malloc.c:418)
> ==8804==    by 0x5047B42: parse_acls (zookeeper.c:369)
> ==8804==    by 0x5047EF6: pyzoo_create (zookeeper.c:1009)
> ==8804==    by 0x40786CC: PyCFunction_Call (in /usr/lib/libpython2.4.so.1.0)
> ==8804==    by 0x40B31DC: PyEval_EvalFrame (in /usr/lib/libpython2.4.so.1.0)
> ==8804==    by 0x40B4485: PyEval_EvalCodeEx (in /usr/lib/libpython2.4.so.1.0)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (ZOOKEEPER-792) zkpython memory leak

Posted by "Lei Zhang (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/ZOOKEEPER-792?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12900563#action_12900563 ] 

Lei Zhang commented on ZOOKEEPER-792:
-------------------------------------

Thanks a lot.


> zkpython memory leak
> --------------------
>
>                 Key: ZOOKEEPER-792
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-792
>             Project: Zookeeper
>          Issue Type: Bug
>          Components: contrib-bindings
>    Affects Versions: 3.3.1
>         Environment: vmware workstation - guest OS:Linux python:2.4.3
>            Reporter: Lei Zhang
>            Assignee: Lei Zhang
>             Fix For: 3.3.2, 3.4.0
>
>         Attachments: ZOOKEEPER-792.patch, ZOOKEEPER-792.patch, ZOOKEEPER-792.patch
>
>
> We recently upgraded zookeeper from 3.2.1 to 3.3.1, now we are seeing less client deadlock on session expiration, which is a definite plus!
> Unfortunately we are seeing memory leak that requires our zk clients to be restarted every half-day. Valgrind result:
> ==8804== 25 (12 direct, 13 indirect) bytes in 1 blocks are definitely lost in loss record 255 of 670
> ==8804==    at 0x4021C42: calloc (vg_replace_malloc.c:418)
> ==8804==    by 0x5047B42: parse_acls (zookeeper.c:369)
> ==8804==    by 0x5047EF6: pyzoo_create (zookeeper.c:1009)
> ==8804==    by 0x40786CC: PyCFunction_Call (in /usr/lib/libpython2.4.so.1.0)
> ==8804==    by 0x40B31DC: PyEval_EvalFrame (in /usr/lib/libpython2.4.so.1.0)
> ==8804==    by 0x40B4485: PyEval_EvalCodeEx (in /usr/lib/libpython2.4.so.1.0)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (ZOOKEEPER-792) zkpython memory leak

Posted by "Henry Robinson (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/ZOOKEEPER-792?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Henry Robinson updated ZOOKEEPER-792:
-------------------------------------

    Attachment: ZOOKEEPER-792.patch

Updated patch to remove that bug. 

> zkpython memory leak
> --------------------
>
>                 Key: ZOOKEEPER-792
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-792
>             Project: Zookeeper
>          Issue Type: Bug
>          Components: contrib-bindings
>    Affects Versions: 3.3.1
>         Environment: vmware workstation - guest OS:Linux python:2.4.3
>            Reporter: Lei Zhang
>            Assignee: Lei Zhang
>             Fix For: 3.3.2, 3.4.0
>
>         Attachments: ZOOKEEPER-792.patch, ZOOKEEPER-792.patch
>
>
> We recently upgraded zookeeper from 3.2.1 to 3.3.1, now we are seeing less client deadlock on session expiration, which is a definite plus!
> Unfortunately we are seeing memory leak that requires our zk clients to be restarted every half-day. Valgrind result:
> ==8804== 25 (12 direct, 13 indirect) bytes in 1 blocks are definitely lost in loss record 255 of 670
> ==8804==    at 0x4021C42: calloc (vg_replace_malloc.c:418)
> ==8804==    by 0x5047B42: parse_acls (zookeeper.c:369)
> ==8804==    by 0x5047EF6: pyzoo_create (zookeeper.c:1009)
> ==8804==    by 0x40786CC: PyCFunction_Call (in /usr/lib/libpython2.4.so.1.0)
> ==8804==    by 0x40B31DC: PyEval_EvalFrame (in /usr/lib/libpython2.4.so.1.0)
> ==8804==    by 0x40B4485: PyEval_EvalCodeEx (in /usr/lib/libpython2.4.so.1.0)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (ZOOKEEPER-792) zkpython memory leak

Posted by "Henry Robinson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/ZOOKEEPER-792?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12899004#action_12899004 ] 

Henry Robinson commented on ZOOKEEPER-792:
------------------------------------------

Hi - 

Sorry for the slow response! I just took a look over the patch - good catches.

+1. I'll commit within the day. 

Henry

> zkpython memory leak
> --------------------
>
>                 Key: ZOOKEEPER-792
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-792
>             Project: Zookeeper
>          Issue Type: Bug
>          Components: contrib-bindings
>    Affects Versions: 3.3.1
>         Environment: vmware workstation - guest OS:Linux python:2.4.3
>            Reporter: Lei Zhang
>            Assignee: Lei Zhang
>             Fix For: 3.3.2, 3.4.0
>
>         Attachments: ZOOKEEPER-792.patch
>
>
> We recently upgraded zookeeper from 3.2.1 to 3.3.1, now we are seeing less client deadlock on session expiration, which is a definite plus!
> Unfortunately we are seeing memory leak that requires our zk clients to be restarted every half-day. Valgrind result:
> ==8804== 25 (12 direct, 13 indirect) bytes in 1 blocks are definitely lost in loss record 255 of 670
> ==8804==    at 0x4021C42: calloc (vg_replace_malloc.c:418)
> ==8804==    by 0x5047B42: parse_acls (zookeeper.c:369)
> ==8804==    by 0x5047EF6: pyzoo_create (zookeeper.c:1009)
> ==8804==    by 0x40786CC: PyCFunction_Call (in /usr/lib/libpython2.4.so.1.0)
> ==8804==    by 0x40B31DC: PyEval_EvalFrame (in /usr/lib/libpython2.4.so.1.0)
> ==8804==    by 0x40B4485: PyEval_EvalCodeEx (in /usr/lib/libpython2.4.so.1.0)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (ZOOKEEPER-792) zkpython memory leak

Posted by "Hadoop QA (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/ZOOKEEPER-792?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12882420#action_12882420 ] 

Hadoop QA commented on ZOOKEEPER-792:
-------------------------------------

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

    +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 tests are needed for 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 warnings.

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

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

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

Test results: http://hudson.zones.apache.org/hudson/job/Zookeeper-Patch-h1.grid.sp2.yahoo.net/120/testReport/
Findbugs warnings: http://hudson.zones.apache.org/hudson/job/Zookeeper-Patch-h1.grid.sp2.yahoo.net/120/artifact/trunk/build/test/findbugs/newPatchFindbugsWarnings.html
Console output: http://hudson.zones.apache.org/hudson/job/Zookeeper-Patch-h1.grid.sp2.yahoo.net/120/console

This message is automatically generated.

> zkpython memory leak
> --------------------
>
>                 Key: ZOOKEEPER-792
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-792
>             Project: Zookeeper
>          Issue Type: Bug
>          Components: contrib-bindings
>    Affects Versions: 3.3.1
>         Environment: vmware workstation - guest OS:Linux python:2.4.3
>            Reporter: Lei Zhang
>             Fix For: 3.3.2, 3.4.0
>
>         Attachments: ZOOKEEPER-792.patch
>
>
> We recently upgraded zookeeper from 3.2.1 to 3.3.1, now we are seeing less client deadlock on session expiration, which is a definite plus!
> Unfortunately we are seeing memory leak that requires our zk clients to be restarted every half-day. Valgrind result:
> ==8804== 25 (12 direct, 13 indirect) bytes in 1 blocks are definitely lost in loss record 255 of 670
> ==8804==    at 0x4021C42: calloc (vg_replace_malloc.c:418)
> ==8804==    by 0x5047B42: parse_acls (zookeeper.c:369)
> ==8804==    by 0x5047EF6: pyzoo_create (zookeeper.c:1009)
> ==8804==    by 0x40786CC: PyCFunction_Call (in /usr/lib/libpython2.4.so.1.0)
> ==8804==    by 0x40B31DC: PyEval_EvalFrame (in /usr/lib/libpython2.4.so.1.0)
> ==8804==    by 0x40B4485: PyEval_EvalCodeEx (in /usr/lib/libpython2.4.so.1.0)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (ZOOKEEPER-792) zkpython memory leak

Posted by "Henry Robinson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/ZOOKEEPER-792?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12899676#action_12899676 ] 

Henry Robinson commented on ZOOKEEPER-792:
------------------------------------------

Just to update - I've found that zkpython tests are failing in trunk, and I don't want to commit a patch when the tests are broken. I'll be creating a JIRA shortly to address the problem once I've looked into it slightly further.

> zkpython memory leak
> --------------------
>
>                 Key: ZOOKEEPER-792
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-792
>             Project: Zookeeper
>          Issue Type: Bug
>          Components: contrib-bindings
>    Affects Versions: 3.3.1
>         Environment: vmware workstation - guest OS:Linux python:2.4.3
>            Reporter: Lei Zhang
>            Assignee: Lei Zhang
>             Fix For: 3.3.2, 3.4.0
>
>         Attachments: ZOOKEEPER-792.patch
>
>
> We recently upgraded zookeeper from 3.2.1 to 3.3.1, now we are seeing less client deadlock on session expiration, which is a definite plus!
> Unfortunately we are seeing memory leak that requires our zk clients to be restarted every half-day. Valgrind result:
> ==8804== 25 (12 direct, 13 indirect) bytes in 1 blocks are definitely lost in loss record 255 of 670
> ==8804==    at 0x4021C42: calloc (vg_replace_malloc.c:418)
> ==8804==    by 0x5047B42: parse_acls (zookeeper.c:369)
> ==8804==    by 0x5047EF6: pyzoo_create (zookeeper.c:1009)
> ==8804==    by 0x40786CC: PyCFunction_Call (in /usr/lib/libpython2.4.so.1.0)
> ==8804==    by 0x40B31DC: PyEval_EvalFrame (in /usr/lib/libpython2.4.so.1.0)
> ==8804==    by 0x40B4485: PyEval_EvalCodeEx (in /usr/lib/libpython2.4.so.1.0)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Assigned: (ZOOKEEPER-792) zkpython memory leak

Posted by "Patrick Hunt (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/ZOOKEEPER-792?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Patrick Hunt reassigned ZOOKEEPER-792:
--------------------------------------

    Assignee: Lei Zhang

> zkpython memory leak
> --------------------
>
>                 Key: ZOOKEEPER-792
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-792
>             Project: Zookeeper
>          Issue Type: Bug
>          Components: contrib-bindings
>    Affects Versions: 3.3.1
>         Environment: vmware workstation - guest OS:Linux python:2.4.3
>            Reporter: Lei Zhang
>            Assignee: Lei Zhang
>             Fix For: 3.3.2, 3.4.0
>
>         Attachments: ZOOKEEPER-792.patch
>
>
> We recently upgraded zookeeper from 3.2.1 to 3.3.1, now we are seeing less client deadlock on session expiration, which is a definite plus!
> Unfortunately we are seeing memory leak that requires our zk clients to be restarted every half-day. Valgrind result:
> ==8804== 25 (12 direct, 13 indirect) bytes in 1 blocks are definitely lost in loss record 255 of 670
> ==8804==    at 0x4021C42: calloc (vg_replace_malloc.c:418)
> ==8804==    by 0x5047B42: parse_acls (zookeeper.c:369)
> ==8804==    by 0x5047EF6: pyzoo_create (zookeeper.c:1009)
> ==8804==    by 0x40786CC: PyCFunction_Call (in /usr/lib/libpython2.4.so.1.0)
> ==8804==    by 0x40B31DC: PyEval_EvalFrame (in /usr/lib/libpython2.4.so.1.0)
> ==8804==    by 0x40B4485: PyEval_EvalCodeEx (in /usr/lib/libpython2.4.so.1.0)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (ZOOKEEPER-792) zkpython memory leak

Posted by "Lei Zhang (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/ZOOKEEPER-792?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Lei Zhang updated ZOOKEEPER-792:
--------------------------------

    Attachment: ZOOKEEPER-792.patch

Plug memory leak in pyzoo_get() and pyzoo_create().

> zkpython memory leak
> --------------------
>
>                 Key: ZOOKEEPER-792
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-792
>             Project: Zookeeper
>          Issue Type: Bug
>          Components: contrib-bindings
>    Affects Versions: 3.3.1
>         Environment: vmware workstation - guest OS:Linux python:2.4.3
>            Reporter: Lei Zhang
>             Fix For: 3.3.2, 3.4.0
>
>         Attachments: ZOOKEEPER-792.patch
>
>
> We recently upgraded zookeeper from 3.2.1 to 3.3.1, now we are seeing less client deadlock on session expiration, which is a definite plus!
> Unfortunately we are seeing memory leak that requires our zk clients to be restarted every half-day. Valgrind result:
> ==8804== 25 (12 direct, 13 indirect) bytes in 1 blocks are definitely lost in loss record 255 of 670
> ==8804==    at 0x4021C42: calloc (vg_replace_malloc.c:418)
> ==8804==    by 0x5047B42: parse_acls (zookeeper.c:369)
> ==8804==    by 0x5047EF6: pyzoo_create (zookeeper.c:1009)
> ==8804==    by 0x40786CC: PyCFunction_Call (in /usr/lib/libpython2.4.so.1.0)
> ==8804==    by 0x40B31DC: PyEval_EvalFrame (in /usr/lib/libpython2.4.so.1.0)
> ==8804==    by 0x40B4485: PyEval_EvalCodeEx (in /usr/lib/libpython2.4.so.1.0)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (ZOOKEEPER-792) zkpython memory leak

Posted by "Henry Robinson (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/ZOOKEEPER-792?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Henry Robinson updated ZOOKEEPER-792:
-------------------------------------

          Status: Resolved  (was: Patch Available)
    Hadoop Flags: [Reviewed]
      Resolution: Fixed

I just committed this! Thanks Lei Zhang!

> zkpython memory leak
> --------------------
>
>                 Key: ZOOKEEPER-792
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-792
>             Project: Zookeeper
>          Issue Type: Bug
>          Components: contrib-bindings
>    Affects Versions: 3.3.1
>         Environment: vmware workstation - guest OS:Linux python:2.4.3
>            Reporter: Lei Zhang
>            Assignee: Lei Zhang
>             Fix For: 3.3.2, 3.4.0
>
>         Attachments: ZOOKEEPER-792.patch, ZOOKEEPER-792.patch, ZOOKEEPER-792.patch
>
>
> We recently upgraded zookeeper from 3.2.1 to 3.3.1, now we are seeing less client deadlock on session expiration, which is a definite plus!
> Unfortunately we are seeing memory leak that requires our zk clients to be restarted every half-day. Valgrind result:
> ==8804== 25 (12 direct, 13 indirect) bytes in 1 blocks are definitely lost in loss record 255 of 670
> ==8804==    at 0x4021C42: calloc (vg_replace_malloc.c:418)
> ==8804==    by 0x5047B42: parse_acls (zookeeper.c:369)
> ==8804==    by 0x5047EF6: pyzoo_create (zookeeper.c:1009)
> ==8804==    by 0x40786CC: PyCFunction_Call (in /usr/lib/libpython2.4.so.1.0)
> ==8804==    by 0x40B31DC: PyEval_EvalFrame (in /usr/lib/libpython2.4.so.1.0)
> ==8804==    by 0x40B4485: PyEval_EvalCodeEx (in /usr/lib/libpython2.4.so.1.0)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (ZOOKEEPER-792) zkpython memory leak

Posted by "Mahadev konar (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/ZOOKEEPER-792?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12892801#action_12892801 ] 

Mahadev konar commented on ZOOKEEPER-792:
-----------------------------------------

henry, can you take a look at this?


> zkpython memory leak
> --------------------
>
>                 Key: ZOOKEEPER-792
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-792
>             Project: Zookeeper
>          Issue Type: Bug
>          Components: contrib-bindings
>    Affects Versions: 3.3.1
>         Environment: vmware workstation - guest OS:Linux python:2.4.3
>            Reporter: Lei Zhang
>            Assignee: Lei Zhang
>             Fix For: 3.3.2, 3.4.0
>
>         Attachments: ZOOKEEPER-792.patch
>
>
> We recently upgraded zookeeper from 3.2.1 to 3.3.1, now we are seeing less client deadlock on session expiration, which is a definite plus!
> Unfortunately we are seeing memory leak that requires our zk clients to be restarted every half-day. Valgrind result:
> ==8804== 25 (12 direct, 13 indirect) bytes in 1 blocks are definitely lost in loss record 255 of 670
> ==8804==    at 0x4021C42: calloc (vg_replace_malloc.c:418)
> ==8804==    by 0x5047B42: parse_acls (zookeeper.c:369)
> ==8804==    by 0x5047EF6: pyzoo_create (zookeeper.c:1009)
> ==8804==    by 0x40786CC: PyCFunction_Call (in /usr/lib/libpython2.4.so.1.0)
> ==8804==    by 0x40B31DC: PyEval_EvalFrame (in /usr/lib/libpython2.4.so.1.0)
> ==8804==    by 0x40B4485: PyEval_EvalCodeEx (in /usr/lib/libpython2.4.so.1.0)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (ZOOKEEPER-792) zkpython memory leak

Posted by "Henry Robinson (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/ZOOKEEPER-792?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Henry Robinson updated ZOOKEEPER-792:
-------------------------------------

    Attachment: ZOOKEEPER-792.patch

I forgot --no-prefix. Plus ca change, plus c'est la meme chose. 

> zkpython memory leak
> --------------------
>
>                 Key: ZOOKEEPER-792
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-792
>             Project: Zookeeper
>          Issue Type: Bug
>          Components: contrib-bindings
>    Affects Versions: 3.3.1
>         Environment: vmware workstation - guest OS:Linux python:2.4.3
>            Reporter: Lei Zhang
>            Assignee: Lei Zhang
>             Fix For: 3.3.2, 3.4.0
>
>         Attachments: ZOOKEEPER-792.patch, ZOOKEEPER-792.patch, ZOOKEEPER-792.patch
>
>
> We recently upgraded zookeeper from 3.2.1 to 3.3.1, now we are seeing less client deadlock on session expiration, which is a definite plus!
> Unfortunately we are seeing memory leak that requires our zk clients to be restarted every half-day. Valgrind result:
> ==8804== 25 (12 direct, 13 indirect) bytes in 1 blocks are definitely lost in loss record 255 of 670
> ==8804==    at 0x4021C42: calloc (vg_replace_malloc.c:418)
> ==8804==    by 0x5047B42: parse_acls (zookeeper.c:369)
> ==8804==    by 0x5047EF6: pyzoo_create (zookeeper.c:1009)
> ==8804==    by 0x40786CC: PyCFunction_Call (in /usr/lib/libpython2.4.so.1.0)
> ==8804==    by 0x40B31DC: PyEval_EvalFrame (in /usr/lib/libpython2.4.so.1.0)
> ==8804==    by 0x40B4485: PyEval_EvalCodeEx (in /usr/lib/libpython2.4.so.1.0)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (ZOOKEEPER-792) zkpython memory leak

Posted by "Patrick Hunt (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/ZOOKEEPER-792?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Patrick Hunt updated ZOOKEEPER-792:
-----------------------------------

    Fix Version/s: 3.3.2
                   3.4.0

> zkpython memory leak
> --------------------
>
>                 Key: ZOOKEEPER-792
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-792
>             Project: Zookeeper
>          Issue Type: Bug
>          Components: contrib-bindings
>    Affects Versions: 3.3.1
>         Environment: vmware workstation - guest OS:Linux python:2.4.3
>            Reporter: Lei Zhang
>             Fix For: 3.3.2, 3.4.0
>
>
> We recently upgraded zookeeper from 3.2.1 to 3.3.1, now we are seeing less client deadlock on session expiration, which is a definite plus!
> Unfortunately we are seeing memory leak that requires our zk clients to be restarted every half-day. Valgrind result:
> ==8804== 25 (12 direct, 13 indirect) bytes in 1 blocks are definitely lost in loss record 255 of 670
> ==8804==    at 0x4021C42: calloc (vg_replace_malloc.c:418)
> ==8804==    by 0x5047B42: parse_acls (zookeeper.c:369)
> ==8804==    by 0x5047EF6: pyzoo_create (zookeeper.c:1009)
> ==8804==    by 0x40786CC: PyCFunction_Call (in /usr/lib/libpython2.4.so.1.0)
> ==8804==    by 0x40B31DC: PyEval_EvalFrame (in /usr/lib/libpython2.4.so.1.0)
> ==8804==    by 0x40B4485: PyEval_EvalCodeEx (in /usr/lib/libpython2.4.so.1.0)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (ZOOKEEPER-792) zkpython memory leak

Posted by "Lei Zhang (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/ZOOKEEPER-792?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Lei Zhang updated ZOOKEEPER-792:
--------------------------------

    Status: Patch Available  (was: Open)

> zkpython memory leak
> --------------------
>
>                 Key: ZOOKEEPER-792
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-792
>             Project: Zookeeper
>          Issue Type: Bug
>          Components: contrib-bindings
>    Affects Versions: 3.3.1
>         Environment: vmware workstation - guest OS:Linux python:2.4.3
>            Reporter: Lei Zhang
>             Fix For: 3.3.2, 3.4.0
>
>         Attachments: ZOOKEEPER-792.patch
>
>
> We recently upgraded zookeeper from 3.2.1 to 3.3.1, now we are seeing less client deadlock on session expiration, which is a definite plus!
> Unfortunately we are seeing memory leak that requires our zk clients to be restarted every half-day. Valgrind result:
> ==8804== 25 (12 direct, 13 indirect) bytes in 1 blocks are definitely lost in loss record 255 of 670
> ==8804==    at 0x4021C42: calloc (vg_replace_malloc.c:418)
> ==8804==    by 0x5047B42: parse_acls (zookeeper.c:369)
> ==8804==    by 0x5047EF6: pyzoo_create (zookeeper.c:1009)
> ==8804==    by 0x40786CC: PyCFunction_Call (in /usr/lib/libpython2.4.so.1.0)
> ==8804==    by 0x40B31DC: PyEval_EvalFrame (in /usr/lib/libpython2.4.so.1.0)
> ==8804==    by 0x40B4485: PyEval_EvalCodeEx (in /usr/lib/libpython2.4.so.1.0)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (ZOOKEEPER-792) zkpython memory leak

Posted by "Henry Robinson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/ZOOKEEPER-792?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12900380#action_12900380 ] 

Henry Robinson commented on ZOOKEEPER-792:
------------------------------------------

Aha - I think I have found the problem, and it was related to this patch.


   PyObject *ret = Py_BuildValue( "(s#,N)", buffer,buffer_len, stat_dict );
+  free_pywatcher(pw);
   free(buffer);

We shouldn't free the pywatcher_t object here because it may be called later. This was what was causing the segfault I was seeing. I'll upload a new patch with this line removed; I hope it will still fix your memory consumption issues. 

> zkpython memory leak
> --------------------
>
>                 Key: ZOOKEEPER-792
>                 URL: https://issues.apache.org/jira/browse/ZOOKEEPER-792
>             Project: Zookeeper
>          Issue Type: Bug
>          Components: contrib-bindings
>    Affects Versions: 3.3.1
>         Environment: vmware workstation - guest OS:Linux python:2.4.3
>            Reporter: Lei Zhang
>            Assignee: Lei Zhang
>             Fix For: 3.3.2, 3.4.0
>
>         Attachments: ZOOKEEPER-792.patch
>
>
> We recently upgraded zookeeper from 3.2.1 to 3.3.1, now we are seeing less client deadlock on session expiration, which is a definite plus!
> Unfortunately we are seeing memory leak that requires our zk clients to be restarted every half-day. Valgrind result:
> ==8804== 25 (12 direct, 13 indirect) bytes in 1 blocks are definitely lost in loss record 255 of 670
> ==8804==    at 0x4021C42: calloc (vg_replace_malloc.c:418)
> ==8804==    by 0x5047B42: parse_acls (zookeeper.c:369)
> ==8804==    by 0x5047EF6: pyzoo_create (zookeeper.c:1009)
> ==8804==    by 0x40786CC: PyCFunction_Call (in /usr/lib/libpython2.4.so.1.0)
> ==8804==    by 0x40B31DC: PyEval_EvalFrame (in /usr/lib/libpython2.4.so.1.0)
> ==8804==    by 0x40B4485: PyEval_EvalCodeEx (in /usr/lib/libpython2.4.so.1.0)

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.