You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Ken Giusti (Jira)" <ji...@apache.org> on 2022/06/21 14:49:00 UTC

[jira] [Updated] (PROTON-2568) Leak of addrinfo memory held by raw connection

     [ https://issues.apache.org/jira/browse/PROTON-2568?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ken Giusti updated PROTON-2568:
-------------------------------
    Attachment: fix.patch

> Leak of addrinfo memory held by raw connection 
> -----------------------------------------------
>
>                 Key: PROTON-2568
>                 URL: https://issues.apache.org/jira/browse/PROTON-2568
>             Project: Qpid Proton
>          Issue Type: Bug
>          Components: proton-c
>    Affects Versions: proton-c-0.37.0, proton-c-0.38.0
>            Reporter: Ken Giusti
>            Priority: Major
>         Attachments: fix.patch
>
>
> This leak can be triggered by running the skupper-router http1 unit test for a single router, example:
> /usr/bin/python3.10 "/home/kgiusti/work/skupper/skupper-router/BUILD/tests/run.py" "-m" "unittest" "-v" "system_tests_http1_adaptor.Http1AdaptorOneRouterTest.test_001_get"
>  
> The leak occurs when skupper-router is attempting to connect to a remote HTTP server via a raw connection but shuts down before any raw connection events are processed (e.g. No PN_RAW_CONNECTION_CONNECTED or _DISCONNECTED).
> During shutdown the router frees the proactor and expects any outstanding raw connection resources owned by it to be freed.
> I've traced the proactor shutdown logic, and when the leak occurs there is a final call to praw_connection_cleanup() for the outstanding connection, but the praw_connection_t still holds a pointer to the allocated addrinfo.  praw_connection_cleanup() frees the praw_connection_t but does not call freeaddrinfo(prc->addrinfo) to release the addrinfo memory.



--
This message was sent by Atlassian Jira
(v8.20.7#820007)

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