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

Ganesh Murthy commented on DISPATCH-344:
----------------------------------------

Ran the script to execute qdstat -m 1000 times and the memory of the router 
stayed at 548076. This problem might have been fixed with all the other mem 
leak fixes we have done in master. Marking this issue as fixed.

> memory growth after repeated calls from qdstat -m
> -------------------------------------------------
>
>                 Key: DISPATCH-344
>                 URL: https://issues.apache.org/jira/browse/DISPATCH-344
>             Project: Qpid Dispatch
>          Issue Type: Bug
>          Components: Routing Engine
>    Affects Versions: 0.6.0
>            Reporter: michael goulish
>            Assignee: Ganesh Murthy
>             Fix For: 0.8.0
>
>
> 0. version of dispatch code is   0.6.0 RC3
> 1. bring up a router
> 2. do not attach any clients, except...
> 3. ...repeatedly invoke qdstat -m on the router 
> result:
> After 1000 calls from "qdstat -m", top shows that router memory has grown by 
> 4947968 bytes.  The output from "qdstat -m" accounts for about 63% of that, 
> or 3144448 bytes.
> Here are the data types that increased, according to qdstat, ordered from 
> largest to smallest.
> Um.   This table looked really nice when it was in a fixed-width font.....
> {noformat}
>   type                   size       total         total     increase   
> increase    before        after     structs     bytes
>   
> =========================================================================================
>   qd_log_entry_t         2104        112          1040         928     1952512
>   qd_buffer_t            536          80          1120        1040      557440
>   qd_field_iterator_t    128         192          1280        1088      139264
>   qdr_delivery_t         136          64           512         448       60928
>   qdr_connection_t       216          64           320         256       55296
>   qdr_field_t            40          192          1280        1088       43520
>   qd_connection_t        224          64           256         192       43008
>   qd_message_content_t   640          16            80          64       40960
>   qd_message_t           128         192           512         320       40960
>   qdpn_connector_t       600          16            64          48       28800
>   qdr_general_work_t     64           64           512         448       28672
>   qdr_connection_work_t  56           64           512         448       25088
>   qd_composite_t         112          64           256         192       21504
>   qdr_link_t             264          16            80          64       16896
>   qd_composed_field_t    64           64           256         192       12288
>   qdr_terminus_t         64           64           256         192       12288
>   qdr_delivery_ref_t     24           64           512         448       10752
>   qdr_link_ref_t         24           64           512         448       10752
>   qd_parsed_field_t      80          128           256         128       10240
>   qdr_action_t           160         256           320          64       10240
>   qd_link_t              48           64           256         192        9216
>   qdr_error_t            24            0           320         320        7680
>   qd_deferred_call_t     32           64           256         192        6144
> {noformat}
> grand total increase from qdstat:    3144448
> grand total increase from top:       4947968
> Here is the script I used....
> This input window is breaking some lines.   >:-(   
> #! /bin/bash
> echo "NOTE:  router should already be running."
> INSTALL_ROOT=${SHACKLETON_ROOT}/install
> PROTON_INSTALL_DIR=${INSTALL_ROOT}/proton
> DISPATCH_INSTALL_DIR=${INSTALL_ROOT}/dispatch
> QDSTAT=${DISPATCH_INSTALL_DIR}/bin/qdstat
> export 
> LD_LIBRARY_PATH=${DISPATCH_INSTALL_DIR}/lib64:${PROTON_INSTALL_DIR}/lib64
> export 
> PYTHONPATH=${DISPATCH_INSTALL_DIR}/lib/qpid-dispatch/python:${DISPATCH_INSTALL_DIR}/lib/python2.7/site-packages:${PROTON_INSTALL_DIR}/lib64/proton/bindings/python
> ROUTER_PID=`ps -aef | grep qdrouterd | grep -v grep | awk '{print $2}'`
> count=1
> while [ $count -lt 1001 ]
> do
>   echo "==========================================="
>   echo "TEST $count"
>   echo "==========================================="
>   count=$(( $count + 1 ))
>   top -b -n 1 -p ${ROUTER_PID}
>   ${QDSTAT} -m
>   sleep 3
> done



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to