You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "ASF GitHub Bot (Jira)" <ji...@apache.org> on 2020/04/07 17:01:00 UTC

[jira] [Commented] (PROTON-2116) Memory leak in python client

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

ASF GitHub Bot commented on PROTON-2116:
----------------------------------------

jiridanek commented on pull request #237: PROTON-2116 [python] add test for the object leak issue in BlockingConnection
URL: https://github.com/apache/qpid-proton/pull/237
 
 
   The issue fixed in https://issues.apache.org/jira/browse/PROTON-2116 is fixed on Linux, but not on Windows: the test fails there.
   
   @astitcher This one takes 18 s. I guess it can be easilly sped up by running the outer for loop 3 times, instead of 5 (so 40 % improvement), then it would take larger changes to make it even faster.
   
   ```27: Test timeout computed to be: 1500
   27: test_blocking_connection_object_leak (blocking_connection_object_leak_test.BlockingConnectionObjectLeakTests)
   27: Kills and restarts broker repeatedly, while client is reconnecting. ... FAIL
   27: 
   27: ======================================================================
   27: FAIL: test_blocking_connection_object_leak (blocking_connection_object_leak_test.BlockingConnectionObjectLeakTests)
   27: Kills and restarts broker repeatedly, while client is reconnecting.
   27: ----------------------------------------------------------------------
   27: Traceback (most recent call last):
   27:   File "C:\projects\qpid-proton\python\tests\integration\blocking_connection_object_leak_test.py", line 149, in test_blocking_connection_object_leak
   27:     self.assertEqual([0] * 4, diffs, "Object counts should not be increasing")
   27: AssertionError: Lists differ: [0, 0, 0, 0] != [0, 30, 60, 90]
   27: 
   27: First differing element 1:
   27: 0
   27: 30
   27: 
   27: - [0, 0, 0, 0]
   27: + [0, 30, 60, 90]
   27: ?     +   +   +
   27:  : Object counts should not be increasing
   27: 
   27: ----------------------------------------------------------------------
   27: Ran 1 test in 17.445s
   27: 
   27: FAILED (failures=1)
   27/28 Test #27: python-integration-test ..........***Failed   17.77 sec
   test 28
   ```
 
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


> Memory leak in python client
> ----------------------------
>
>                 Key: PROTON-2116
>                 URL: https://issues.apache.org/jira/browse/PROTON-2116
>             Project: Qpid Proton
>          Issue Type: Bug
>          Components: python-binding
>    Affects Versions: proton-c-0.29.0
>            Reporter: Clifford Jansen
>            Assignee: Clifford Jansen
>            Priority: Major
>             Fix For: proton-c-0.30.0
>
>         Attachments: leak.py
>
>
> The Python client leaks transports and selectables. When using the BlockingConnection classes, Containers, Collectors and other runtime class objects can also leak as additional referents.
> To reproduce, run the test case leak.py against the example broker. Kill and restart the broker repeatedly. The value of gc.get_objects() keeps increasing.
> Breaking the circular references between transports and selectables prevents these leaks.
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org