You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-dev@axis.apache.org by "Marc Giger (JIRA)" <ji...@apache.org> on 2006/11/12 16:53:37 UTC

[jira] Created: (AXIS2C-399) memory leaks

memory leaks
------------

                 Key: AXIS2C-399
                 URL: http://issues.apache.org/jira/browse/AXIS2C-399
             Project: Axis2-C
          Issue Type: Bug
    Affects Versions: Current (Nightly)
         Environment: linux simple http server
            Reporter: Marc Giger


I see massive memory leaks with the Simple Axis2 HTTP Server.
Because I can't test it with mod_axis2 I can only report it with the simple http server.

Here are two valgrind outputs:

The first one is with a shoot to the sample echo service:

Started Simple Axis2 HTTP Server ...
==19904==
==19904== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 45 from
1) ==19904== malloc/free: in use at exit: 71,000 bytes in 1,038 blocks.
==19904== malloc/free: 15,119 allocs, 14,081 frees, 1,513,871 bytes
allocated. ==19904== For counts of detected errors, rerun with: -v
==19904== searching for pointers to 1,038 not-freed blocks.
==19904== checked 8,697,064 bytes.
==19904==
==19904== LEAK SUMMARY:
==19904==    definitely lost: 70,309 bytes in 1,023 blocks.
==19904==      possibly lost: 136 bytes in 1 blocks.
==19904==    still reachable: 555 bytes in 14 blocks.
==19904==         suppressed: 0 bytes in 0 blocks.
==19904== Use --leak-check=full to see details of leaked memory.


This second one is with a service built with the skeleton generator and
no data binding but just XML in/out:

Started Simple Axis2 HTTP Server ...
==13034==
==13034== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 46 from
1) ==13034== malloc/free: in use at exit: 200,214 bytes in 1,025 blocks.
==13034== malloc/free: 24,826 allocs, 23,801 frees, 2,676,022 bytes
allocated. ==13034== For counts of detected errors, rerun with: -v
==13034== searching for pointers to 1,025 not-freed blocks.
==13034== checked 8,697,064 bytes.
==13034==
==13034== LEAK SUMMARY:
==13034==    definitely lost: 199,523 bytes in 1,010 blocks.
==13034==      possibly lost: 136 bytes in 1 blocks.
==13034==    still reachable: 555 bytes in 14 blocks.
==13034==         suppressed: 0 bytes in 0 blocks.
==13034== Use --leak-check=full to see details of leaked memory.

My service function looks like the following:

axiom_node_t* axis2_skel_TestService_Test (const axis2_env_t *env,
					      axiom_node_t* param0 )
{
	return param0;
}

In this case i sent a document with about 34KB in size.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

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


[jira] Commented: (AXIS2C-399) memory leaks

Posted by "Samisa Abeysinghe (JIRA)" <ji...@apache.org>.
    [ http://issues.apache.org/jira/browse/AXIS2C-399?page=comments#action_12454786 ] 
            
Samisa Abeysinghe commented on AXIS2C-399:
------------------------------------------

Please note that even though I applied the patch, I did not commit the stuff yet into svn

> memory leaks
> ------------
>
>                 Key: AXIS2C-399
>                 URL: http://issues.apache.org/jira/browse/AXIS2C-399
>             Project: Axis2-C
>          Issue Type: Bug
>    Affects Versions: Current (Nightly)
>         Environment: linux simple http server
>            Reporter: Marc Giger
>
> I see massive memory leaks with the Simple Axis2 HTTP Server.
> Because I can't test it with mod_axis2 I can only report it with the simple http server.
> Here are two valgrind outputs:
> The first one is with a shoot to the sample echo service:
> Started Simple Axis2 HTTP Server ...
> ==19904==
> ==19904== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 45 from
> 1) ==19904== malloc/free: in use at exit: 71,000 bytes in 1,038 blocks.
> ==19904== malloc/free: 15,119 allocs, 14,081 frees, 1,513,871 bytes
> allocated. ==19904== For counts of detected errors, rerun with: -v
> ==19904== searching for pointers to 1,038 not-freed blocks.
> ==19904== checked 8,697,064 bytes.
> ==19904==
> ==19904== LEAK SUMMARY:
> ==19904==    definitely lost: 70,309 bytes in 1,023 blocks.
> ==19904==      possibly lost: 136 bytes in 1 blocks.
> ==19904==    still reachable: 555 bytes in 14 blocks.
> ==19904==         suppressed: 0 bytes in 0 blocks.
> ==19904== Use --leak-check=full to see details of leaked memory.
> This second one is with a service built with the skeleton generator and
> no data binding but just XML in/out:
> Started Simple Axis2 HTTP Server ...
> ==13034==
> ==13034== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 46 from
> 1) ==13034== malloc/free: in use at exit: 200,214 bytes in 1,025 blocks.
> ==13034== malloc/free: 24,826 allocs, 23,801 frees, 2,676,022 bytes
> allocated. ==13034== For counts of detected errors, rerun with: -v
> ==13034== searching for pointers to 1,025 not-freed blocks.
> ==13034== checked 8,697,064 bytes.
> ==13034==
> ==13034== LEAK SUMMARY:
> ==13034==    definitely lost: 199,523 bytes in 1,010 blocks.
> ==13034==      possibly lost: 136 bytes in 1 blocks.
> ==13034==    still reachable: 555 bytes in 14 blocks.
> ==13034==         suppressed: 0 bytes in 0 blocks.
> ==13034== Use --leak-check=full to see details of leaked memory.
> My service function looks like the following:
> axiom_node_t* axis2_skel_TestService_Test (const axis2_env_t *env,
> 					      axiom_node_t* param0 )
> {
> 	return param0;
> }
> In this case i sent a document with about 34KB in size.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

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


[jira] Resolved: (AXIS2C-399) memory leaks

Posted by "Samisa Abeysinghe (JIRA)" <ji...@apache.org>.
     [ http://issues.apache.org/jira/browse/AXIS2C-399?page=all ]

Samisa Abeysinghe resolved AXIS2C-399.
--------------------------------------

    Resolution: Fixed

I have done loads of leak fixes to hit virtual zero with many samples such as echo, math and notify both on server side and client side.

I also applied the patch by Chris to use APR pools with mod_axis2 to minimize leaks with httpd module

> memory leaks
> ------------
>
>                 Key: AXIS2C-399
>                 URL: http://issues.apache.org/jira/browse/AXIS2C-399
>             Project: Axis2-C
>          Issue Type: Bug
>    Affects Versions: Current (Nightly)
>         Environment: linux simple http server
>            Reporter: Marc Giger
>         Assigned To: Samisa Abeysinghe
>             Fix For: 0.96
>
>
> I see massive memory leaks with the Simple Axis2 HTTP Server.
> Because I can't test it with mod_axis2 I can only report it with the simple http server.
> Here are two valgrind outputs:
> The first one is with a shoot to the sample echo service:
> Started Simple Axis2 HTTP Server ...
> ==19904==
> ==19904== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 45 from
> 1) ==19904== malloc/free: in use at exit: 71,000 bytes in 1,038 blocks.
> ==19904== malloc/free: 15,119 allocs, 14,081 frees, 1,513,871 bytes
> allocated. ==19904== For counts of detected errors, rerun with: -v
> ==19904== searching for pointers to 1,038 not-freed blocks.
> ==19904== checked 8,697,064 bytes.
> ==19904==
> ==19904== LEAK SUMMARY:
> ==19904==    definitely lost: 70,309 bytes in 1,023 blocks.
> ==19904==      possibly lost: 136 bytes in 1 blocks.
> ==19904==    still reachable: 555 bytes in 14 blocks.
> ==19904==         suppressed: 0 bytes in 0 blocks.
> ==19904== Use --leak-check=full to see details of leaked memory.
> This second one is with a service built with the skeleton generator and
> no data binding but just XML in/out:
> Started Simple Axis2 HTTP Server ...
> ==13034==
> ==13034== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 46 from
> 1) ==13034== malloc/free: in use at exit: 200,214 bytes in 1,025 blocks.
> ==13034== malloc/free: 24,826 allocs, 23,801 frees, 2,676,022 bytes
> allocated. ==13034== For counts of detected errors, rerun with: -v
> ==13034== searching for pointers to 1,025 not-freed blocks.
> ==13034== checked 8,697,064 bytes.
> ==13034==
> ==13034== LEAK SUMMARY:
> ==13034==    definitely lost: 199,523 bytes in 1,010 blocks.
> ==13034==      possibly lost: 136 bytes in 1 blocks.
> ==13034==    still reachable: 555 bytes in 14 blocks.
> ==13034==         suppressed: 0 bytes in 0 blocks.
> ==13034== Use --leak-check=full to see details of leaked memory.
> My service function looks like the following:
> axiom_node_t* axis2_skel_TestService_Test (const axis2_env_t *env,
> 					      axiom_node_t* param0 )
> {
> 	return param0;
> }
> In this case i sent a document with about 34KB in size.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

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


[jira] Commented: (AXIS2C-399) memory leaks

Posted by "Marc Giger (JIRA)" <ji...@apache.org>.
    [ http://issues.apache.org/jira/browse/AXIS2C-399?page=comments#action_12461182 ] 
            
Marc Giger commented on AXIS2C-399:
-----------------------------------

There are some leaks left in the case of a soap-fault:
Additionally there are some invalid memory accesses...

Started Simple Axis2 HTTP Server ...
==13250== Thread 2:
==13250== Invalid read of size 1
==13250==    at 0x4906905: memmove (in /usr/lib64/valgrind/amd64-linux/vgpreload_memcheck.so)
==13250==    by 0x54B4F04: axis2_http_transport_utils_process_http_post_request (http_transport_utils.c:205)
==13250==    by 0x54B2B46: axis2_http_worker_process_request (http_worker.c:350)
==13250==    by 0x55CA2BF: axis2_svr_thread_worker_func (http_svr_thread.c:337)
==13250==    by 0x36F6B05FBB: start_thread (in /lib64/libpthread-2.4.so)
==13250==    by 0x36F64B8CED: clone (in /lib64/libc-2.4.so)
==13250==  Address 0x5891183 is 0 bytes after a block of size 3 alloc'd
==13250==    at 0x4905930: malloc (in /usr/lib64/valgrind/amd64-linux/vgpreload_memcheck.so)
==13250==    by 0x4C46879: axis2_strdup (string.c:34)
==13250==    by 0x54B6FAA: axis2_http_header_create (http_header.c:84)
==13250==    by 0x54B70CC: axis2_http_header_create_by_str (http_header.c:143)
==13250==    by 0x55C9A6A: axis2_simple_http_svr_conn_read_request (simple_http_svr_conn.c:369)
==13250==    by 0x55CA2AA: axis2_svr_thread_worker_func (http_svr_thread.c:335)
==13250==    by 0x36F6B05FBB: start_thread (in /lib64/libpthread-2.4.so)
==13250==    by 0x36F64B8CED: clone (in /lib64/libc-2.4.so)
==13250==
==13250== Conditional jump or move depends on uninitialised value(s)
==13250==    at 0x4C44AF2: axis2_error_impl_get_message (error.c:549)
==13250==    by 0x5498FC9: axis2_raw_xml_in_out_msg_recv_invoke_business_logic_sync (raw_xml_in_out_msg_recv.c:315)
==13250==    by 0x5498357: axis2_raw_xml_in_out_msg_recv_receive_sync (msg_recv.c:434)
==13250==    by 0x548C7E5: axis2_engine_receive (engine.c:446)
==13250==    by 0x54B4C58: axis2_http_transport_utils_process_http_post_request (http_transport_utils.c:479)
==13250==    by 0x54B2B46: axis2_http_worker_process_request (http_worker.c:350)
==13250==    by 0x55CA2BF: axis2_svr_thread_worker_func (http_svr_thread.c:337)
==13250==    by 0x36F6B05FBB: start_thread (in /lib64/libpthread-2.4.so)
==13250==    by 0x36F64B8CED: clone (in /lib64/libc-2.4.so)
==13250==
==13250== ERROR SUMMARY: 2 errors from 2 contexts (suppressed: 4 from 1)
==13250== malloc/free: in use at exit: 6,657,596 bytes in 110,462 blocks.
==13250== malloc/free: 208,461 allocs, 97,999 frees, 13,946,417 bytes allocated.
==13250== For counts of detected errors, rerun with: -v
==13250== searching for pointers to 110,462 not-freed blocks.
==13250== checked 8,847,488 bytes.
==13250==
==13250== Thread 1:
==13250==
==13250== 164 (40 direct, 124 indirect) bytes in 1 blocks are definitely lost in loss record 19 of 131
==13250==    at 0x4905930: malloc (in /usr/lib64/valgrind/amd64-linux/vgpreload_memcheck.so)
==13250==    by 0x4C4BCD1: axis2_url_create (url.c:100)
==13250==    by 0x54B2654: axis2_http_worker_process_request (http_worker.c:261)
==13250==    by 0x55CA2BF: axis2_svr_thread_worker_func (http_svr_thread.c:337)
==13250==    by 0x36F6B05FBB: start_thread (in /lib64/libpthread-2.4.so)
==13250==    by 0x36F64B8CED: clone (in /lib64/libc-2.4.so)
==13250==
==13250==
==13250== 44 bytes in 1 blocks are definitely lost in loss record 21 of 131
==13250==    at 0x4905930: malloc (in /usr/lib64/valgrind/amd64-linux/vgpreload_memcheck.so)
==13250==    by 0x4C4BBDC: axis2_url_to_external_form (url.c:345)
==13250==    by 0x54B2667: axis2_http_worker_process_request (http_worker.c:265)
==13250==    by 0x55CA2BF: axis2_svr_thread_worker_func (http_svr_thread.c:337)
==13250==    by 0x36F6B05FBB: start_thread (in /lib64/libpthread-2.4.so)
==13250==    by 0x36F64B8CED: clone (in /lib64/libc-2.4.so)
==13250==
==13250==
==13250== 80 (32 direct, 48 indirect) bytes in 1 blocks are definitely lost in loss record 36 of 131
==13250==    at 0x4905930: malloc (in /usr/lib64/valgrind/amd64-linux/vgpreload_memcheck.so)
==13250==    by 0x4C4A710: axis2_property_create (property.c:71)
==13250==    by 0x4C4A918: axis2_property_clone (property.c:247)
==13250==    by 0x548CA8A: axis2_engine_create_fault_msg_ctx (engine.c:672)
==13250==    by 0x54B2B7A: axis2_http_worker_process_request (http_worker.c:366)
==13250==    by 0x55CA2BF: axis2_svr_thread_worker_func (http_svr_thread.c:337)
==13250==    by 0x36F6B05FBB: start_thread (in /lib64/libpthread-2.4.so)
==13250==    by 0x36F64B8CED: clone (in /lib64/libc-2.4.so)
==13250==
==13250==
==13250== 160 (40 direct, 120 indirect) bytes in 1 blocks are definitely lost in loss record 56 of 131
==13250==    at 0x4905930: malloc (in /usr/lib64/valgrind/amd64-linux/vgpreload_memcheck.so)
==13250==    by 0x54B6C3A: axis2_http_status_line_create (http_status_line.c:90)
==13250==    by 0x54B2BC7: axis2_http_worker_process_request (http_worker.c:380)
==13250==    by 0x55CA2BF: axis2_svr_thread_worker_func (http_svr_thread.c:337)
==13250==    by 0x36F6B05FBB: start_thread (in /lib64/libpthread-2.4.so)
==13250==    by 0x36F64B8CED: clone (in /lib64/libc-2.4.so)
==13250==
==13250==
==13250== 128 (16 direct, 112 indirect) bytes in 1 blocks are definitely lost in loss record 63 of 131
==13250==    at 0x4905930: malloc (in /usr/lib64/valgrind/amd64-linux/vgpreload_memcheck.so)
==13250==    by 0x548B821: axis2_engine_create (engine.c:145)
==13250==    by 0x54B2B5F: axis2_http_worker_process_request (http_worker.c:358)
==13250==    by 0x55CA2BF: axis2_svr_thread_worker_func (http_svr_thread.c:337)
==13250==    by 0x36F6B05FBB: start_thread (in /lib64/libpthread-2.4.so)
==13250==    by 0x36F64B8CED: clone (in /lib64/libc-2.4.so)
==13250==
==13250==
==13250== 272 bytes in 1 blocks are possibly lost in loss record 80 of 131
==13250==    at 0x4904BBE: calloc (in /usr/lib64/valgrind/amd64-linux/vgpreload_memcheck.so)
==13250==    by 0x36F570F44D: allocate_dtv (in /lib64/ld-2.4.so)
==13250==    by 0x36F570F4E4: _dl_allocate_tls (in /lib64/ld-2.4.so)
==13250==    by 0x36F6B0676D: pthread_create@@GLIBC_2.2.5 (in /lib64/libpthread-2.4.so)
==13250==    by 0x4C4F229: axis2_thread_create (thread_unix.c:120)
==13250==    by 0x55CA530: axis2_http_svr_thread_run (http_svr_thread.c:224)
==13250==    by 0x55CA9A7: axis2_http_server_start (http_server.c:235)
==13250==    by 0x4014AA: main (http_server_main.c:176)
==13250==
==13250==
==13250== 6,419,252 (608 direct, 6,418,644 indirect) bytes in 2 blocks are definitely lost in loss record 93 of 131
==13250==    at 0x4905930: malloc (in /usr/lib64/valgrind/amd64-linux/vgpreload_memcheck.so)
==13250==    by 0x54A5B0B: axis2_msg_ctx_create (msg_ctx.c:677)
==13250==    by 0x54B25D3: axis2_http_worker_process_request (http_worker.c:245)
==13250==    by 0x55CA2BF: axis2_svr_thread_worker_func (http_svr_thread.c:337)
==13250==    by 0x36F6B05FBB: start_thread (in /lib64/libpthread-2.4.so)
==13250==    by 0x36F64B8CED: clone (in /lib64/libc-2.4.so)
==13250==
==13250== LEAK SUMMARY:
==13250==    definitely lost: 1,249 bytes in 10 blocks.
==13250==    indirectly lost: 6,645,729 bytes in 110,196 blocks.
==13250==      possibly lost: 272 bytes in 1 blocks.
==13250==    still reachable: 10,346 bytes in 255 blocks.
==13250==         suppressed: 0 bytes in 0 blocks.
==13250== Reachable blocks (those to which a pointer was found) are not shown.
==13250== To see them, rerun with: --show-reachable=yes

> memory leaks
> ------------
>
>                 Key: AXIS2C-399
>                 URL: http://issues.apache.org/jira/browse/AXIS2C-399
>             Project: Axis2-C
>          Issue Type: Bug
>    Affects Versions: Current (Nightly)
>         Environment: linux simple http server
>            Reporter: Marc Giger
>         Assigned To: Samisa Abeysinghe
>             Fix For: 0.96
>
>
> I see massive memory leaks with the Simple Axis2 HTTP Server.
> Because I can't test it with mod_axis2 I can only report it with the simple http server.
> Here are two valgrind outputs:
> The first one is with a shoot to the sample echo service:
> Started Simple Axis2 HTTP Server ...
> ==19904==
> ==19904== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 45 from
> 1) ==19904== malloc/free: in use at exit: 71,000 bytes in 1,038 blocks.
> ==19904== malloc/free: 15,119 allocs, 14,081 frees, 1,513,871 bytes
> allocated. ==19904== For counts of detected errors, rerun with: -v
> ==19904== searching for pointers to 1,038 not-freed blocks.
> ==19904== checked 8,697,064 bytes.
> ==19904==
> ==19904== LEAK SUMMARY:
> ==19904==    definitely lost: 70,309 bytes in 1,023 blocks.
> ==19904==      possibly lost: 136 bytes in 1 blocks.
> ==19904==    still reachable: 555 bytes in 14 blocks.
> ==19904==         suppressed: 0 bytes in 0 blocks.
> ==19904== Use --leak-check=full to see details of leaked memory.
> This second one is with a service built with the skeleton generator and
> no data binding but just XML in/out:
> Started Simple Axis2 HTTP Server ...
> ==13034==
> ==13034== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 46 from
> 1) ==13034== malloc/free: in use at exit: 200,214 bytes in 1,025 blocks.
> ==13034== malloc/free: 24,826 allocs, 23,801 frees, 2,676,022 bytes
> allocated. ==13034== For counts of detected errors, rerun with: -v
> ==13034== searching for pointers to 1,025 not-freed blocks.
> ==13034== checked 8,697,064 bytes.
> ==13034==
> ==13034== LEAK SUMMARY:
> ==13034==    definitely lost: 199,523 bytes in 1,010 blocks.
> ==13034==      possibly lost: 136 bytes in 1 blocks.
> ==13034==    still reachable: 555 bytes in 14 blocks.
> ==13034==         suppressed: 0 bytes in 0 blocks.
> ==13034== Use --leak-check=full to see details of leaked memory.
> My service function looks like the following:
> axiom_node_t* axis2_skel_TestService_Test (const axis2_env_t *env,
> 					      axiom_node_t* param0 )
> {
> 	return param0;
> }
> In this case i sent a document with about 34KB in size.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

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


[jira] Commented: (AXIS2C-399) memory leaks

Posted by "Marc Giger (JIRA)" <ji...@apache.org>.
    [ http://issues.apache.org/jira/browse/AXIS2C-399?page=comments#action_12461188 ] 
            
Marc Giger commented on AXIS2C-399:
-----------------------------------

Also I see again leaks in the normal path:

Started Simple Axis2 HTTP Server ...
==13476== Thread 2:
==13476== Invalid read of size 1
==13476==    at 0x4906905: memmove (in /usr/lib64/valgrind/amd64-linux/vgpreload_memcheck.so)
==13476==    by 0x54B4F04: axis2_http_transport_utils_process_http_post_request (http_transport_utils.c:205)
==13476==    by 0x54B2B46: axis2_http_worker_process_request (http_worker.c:350)
==13476==    by 0x55CA2BF: axis2_svr_thread_worker_func (http_svr_thread.c:337)
==13476==    by 0x36F6B05FBB: start_thread (in /lib64/libpthread-2.4.so)
==13476==    by 0x36F64B8CED: clone (in /lib64/libc-2.4.so)
==13476==  Address 0x5891183 is 0 bytes after a block of size 3 alloc'd
==13476==    at 0x4905930: malloc (in /usr/lib64/valgrind/amd64-linux/vgpreload_memcheck.so)
==13476==    by 0x4C46879: axis2_strdup (string.c:34)
==13476==    by 0x54B6FAA: axis2_http_header_create (http_header.c:84)
==13476==    by 0x54B70CC: axis2_http_header_create_by_str (http_header.c:143)
==13476==    by 0x55C9A6A: axis2_simple_http_svr_conn_read_request (simple_http_svr_conn.c:369)
==13476==    by 0x55CA2AA: axis2_svr_thread_worker_func (http_svr_thread.c:335)
==13476==    by 0x36F6B05FBB: start_thread (in /lib64/libpthread-2.4.so)
==13476==    by 0x36F64B8CED: clone (in /lib64/libc-2.4.so)
==13476==
==13476== ERROR SUMMARY: 21 errors from 4 contexts (suppressed: 4 from 1)
==13476== malloc/free: in use at exit: 7,731 bytes in 39 blocks.
==13476== malloc/free: 287,756 allocs, 287,717 frees, 18,995,269 bytes allocated.
==13476== For counts of detected errors, rerun with: -v
==13476== searching for pointers to 39 not-freed blocks.
==13476== checked 8,840,272 bytes.
==13476==
==13476== Thread 1:
==13476==
==13476==
==13476== 272 bytes in 1 blocks are possibly lost in loss record 19 of 28
==13476==    at 0x4904BBE: calloc (in /usr/lib64/valgrind/amd64-linux/vgpreload_memcheck.so)
==13476==    by 0x36F570F44D: allocate_dtv (in /lib64/ld-2.4.so)
==13476==    by 0x36F570F4E4: _dl_allocate_tls (in /lib64/ld-2.4.so)
==13476==    by 0x36F6B0676D: pthread_create@@GLIBC_2.2.5 (in /lib64/libpthread-2.4.so)
==13476==    by 0x4C4F229: axis2_thread_create (thread_unix.c:120)
==13476==    by 0x55CA530: axis2_http_svr_thread_run (http_svr_thread.c:224)
==13476==    by 0x55CA9A7: axis2_http_server_start (http_server.c:235)
==13476==    by 0x4014AA: main (http_server_main.c:176)
==13476==
==13476==
==13476== 1,125 (80 direct, 1,045 indirect) bytes in 1 blocks are definitely lost in loss record 21 of 28
==13476==    at 0x4905930: malloc (in /usr/lib64/valgrind/amd64-linux/vgpreload_memcheck.so)
==13476==    by 0x54A67DA: axis2_op_ctx_create (op_ctx.c:140)
==13476==    by 0x548B5E1: axis2_ctx_handler_invoke (ctx_handler.c:146)
==13476==    by 0x548959C: axis2_phase_invoke (phase.c:362)
==13476==    by 0x548BB5D: axis2_engine_invoke_phases (engine.c:779)
==13476==    by 0x548C5AB: axis2_engine_receive (engine.c:398)
==13476==    by 0x54B4C58: axis2_http_transport_utils_process_http_post_request (http_transport_utils.c:479)
==13476==    by 0x54B2B46: axis2_http_worker_process_request (http_worker.c:350)
==13476==    by 0x55CA2BF: axis2_svr_thread_worker_func (http_svr_thread.c:337)
==13476==    by 0x36F6B05FBB: start_thread (in /lib64/libpthread-2.4.so)
==13476==    by 0x36F64B8CED: clone (in /lib64/libc-2.4.so)
==13476==
==13476== LEAK SUMMARY:
==13476==    definitely lost: 144 bytes in 2 blocks.
==13476==    indirectly lost: 5,231 bytes in 27 blocks.
==13476==      possibly lost: 272 bytes in 1 blocks.
==13476==    still reachable: 2,084 bytes in 9 blocks.
==13476==         suppressed: 0 bytes in 0 blocks.
==13476== Reachable blocks (those to which a pointer was found) are not shown.
==13476== To see them, rerun with: --show-reachable=yes

> memory leaks
> ------------
>
>                 Key: AXIS2C-399
>                 URL: http://issues.apache.org/jira/browse/AXIS2C-399
>             Project: Axis2-C
>          Issue Type: Bug
>    Affects Versions: Current (Nightly)
>         Environment: linux simple http server
>            Reporter: Marc Giger
>         Assigned To: Samisa Abeysinghe
>             Fix For: 0.96
>
>
> I see massive memory leaks with the Simple Axis2 HTTP Server.
> Because I can't test it with mod_axis2 I can only report it with the simple http server.
> Here are two valgrind outputs:
> The first one is with a shoot to the sample echo service:
> Started Simple Axis2 HTTP Server ...
> ==19904==
> ==19904== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 45 from
> 1) ==19904== malloc/free: in use at exit: 71,000 bytes in 1,038 blocks.
> ==19904== malloc/free: 15,119 allocs, 14,081 frees, 1,513,871 bytes
> allocated. ==19904== For counts of detected errors, rerun with: -v
> ==19904== searching for pointers to 1,038 not-freed blocks.
> ==19904== checked 8,697,064 bytes.
> ==19904==
> ==19904== LEAK SUMMARY:
> ==19904==    definitely lost: 70,309 bytes in 1,023 blocks.
> ==19904==      possibly lost: 136 bytes in 1 blocks.
> ==19904==    still reachable: 555 bytes in 14 blocks.
> ==19904==         suppressed: 0 bytes in 0 blocks.
> ==19904== Use --leak-check=full to see details of leaked memory.
> This second one is with a service built with the skeleton generator and
> no data binding but just XML in/out:
> Started Simple Axis2 HTTP Server ...
> ==13034==
> ==13034== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 46 from
> 1) ==13034== malloc/free: in use at exit: 200,214 bytes in 1,025 blocks.
> ==13034== malloc/free: 24,826 allocs, 23,801 frees, 2,676,022 bytes
> allocated. ==13034== For counts of detected errors, rerun with: -v
> ==13034== searching for pointers to 1,025 not-freed blocks.
> ==13034== checked 8,697,064 bytes.
> ==13034==
> ==13034== LEAK SUMMARY:
> ==13034==    definitely lost: 199,523 bytes in 1,010 blocks.
> ==13034==      possibly lost: 136 bytes in 1 blocks.
> ==13034==    still reachable: 555 bytes in 14 blocks.
> ==13034==         suppressed: 0 bytes in 0 blocks.
> ==13034== Use --leak-check=full to see details of leaked memory.
> My service function looks like the following:
> axiom_node_t* axis2_skel_TestService_Test (const axis2_env_t *env,
> 					      axiom_node_t* param0 )
> {
> 	return param0;
> }
> In this case i sent a document with about 34KB in size.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

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


[jira] Commented: (AXIS2C-399) memory leaks

Posted by "Dinesh Premalal (JIRA)" <ji...@apache.org>.
    [ http://issues.apache.org/jira/browse/AXIS2C-399?page=comments#action_12451906 ] 
            
Dinesh Premalal commented on AXIS2C-399:
----------------------------------------

memory leak report for echo sample. Please ignore previous one.

==19642== Memcheck, a memory error detector.
==19642== Copyright (C) 2002-2006, and GNU GPL'd, by Julian Seward et al.
==19642== Using LibVEX rev 1658, a library for dynamic binary translation.
==19642== Copyright (C) 2004-2006, and GNU GPL'd, by OpenWorks LLP.
==19642== Using valgrind-3.2.1-Debian, a dynamic binary instrumentation framework.
==19642== Copyright (C) 2000-2006, and GNU GPL'd, by Julian Seward et al.
==19642== For more details, rerun with: -v
==19642== 
--19642-- DWARF2 CFI reader: unhandled CFI instruction 0:50
--19642-- DWARF2 CFI reader: unhandled CFI instruction 0:50
--19642-- DWARF2 CFI reader: unhandled CFI instruction 0:50
--19642-- DWARF2 CFI reader: unhandled CFI instruction 0:50
==19642== Invalid read of size 4
==19642==    at 0x4010C81: (within /lib/ld-2.3.6.so)
==19642==    by 0x4006704: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x429FD8D: (within /lib/tls/libdl-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x42A042C: (within /lib/tls/libdl-2.3.6.so)
==19642==    by 0x429FD20: dlopen (in /lib/tls/libdl-2.3.6.so)
==19642==    by 0x402E14C: axis2_class_loader_load_lib (class_loader.c:250)
==19642==    by 0x402E3AE: axis2_class_loader_create_dll (class_loader.c:79)
==19642==    by 0x409D8D6: axis2_conf_builder_process_transport_senders (conf_builder.c:780)
==19642==  Address 0x448C564 is 52 bytes inside a block of size 55 alloc'd
==19642==    at 0x401D38B: malloc (vg_replace_malloc.c:149)
==19642==    by 0x40281BC: axis2_allocator_malloc_impl (allocator.c:64)
==19642==    by 0x402AEA0: axis2_strdup (string.c:33)
==19642==    by 0x4030579: axis2_dll_desc_set_name (dll_desc.c:262)
==19642==    by 0x409D86E: axis2_conf_builder_process_transport_senders (conf_builder.c:774)
==19642==    by 0x409E796: axis2_conf_builder_populate_conf (conf_builder.c:303)
==19642==    by 0x40986B6: axis2_dep_engine_load_client (dep_engine.c:905)
==19642==    by 0x409FAF2: build_client_conf_ctx (conf_init.c:97)
==19642==    by 0x40AB000: axis2_svc_client_init_transports_from_conf_ctx (svc_client.c:1142)
==19642==    by 0x40AB0D9: axis2_svc_client_create_with_conf_ctx_and_svc (svc_client.c:404)
==19642==    by 0x40AB63B: axis2_svc_client_create (svc_client.c:228)
==19642==    by 0x80489FF: main (echo.c:77)
==19642== 
==19642== Invalid read of size 4
==19642==    at 0x4010DE9: (within /lib/ld-2.3.6.so)
==19642==    by 0x4006704: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x429FD8D: (within /lib/tls/libdl-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x42A042C: (within /lib/tls/libdl-2.3.6.so)
==19642==    by 0x429FD20: dlopen (in /lib/tls/libdl-2.3.6.so)
==19642==    by 0x402E14C: axis2_class_loader_load_lib (class_loader.c:250)
==19642==    by 0x402E3AE: axis2_class_loader_create_dll (class_loader.c:79)
==19642==    by 0x409D8D6: axis2_conf_builder_process_transport_senders (conf_builder.c:780)
==19642==  Address 0x448C564 is 52 bytes inside a block of size 55 alloc'd
==19642==    at 0x401D38B: malloc (vg_replace_malloc.c:149)
==19642==    by 0x40281BC: axis2_allocator_malloc_impl (allocator.c:64)
==19642==    by 0x402AEA0: axis2_strdup (string.c:33)
==19642==    by 0x4030579: axis2_dll_desc_set_name (dll_desc.c:262)
==19642==    by 0x409D86E: axis2_conf_builder_process_transport_senders (conf_builder.c:774)
==19642==    by 0x409E796: axis2_conf_builder_populate_conf (conf_builder.c:303)
==19642==    by 0x40986B6: axis2_dep_engine_load_client (dep_engine.c:905)
==19642==    by 0x409FAF2: build_client_conf_ctx (conf_init.c:97)
==19642==    by 0x40AB000: axis2_svc_client_init_transports_from_conf_ctx (svc_client.c:1142)
==19642==    by 0x40AB0D9: axis2_svc_client_create_with_conf_ctx_and_svc (svc_client.c:404)
==19642==    by 0x40AB63B: axis2_svc_client_create (svc_client.c:228)
==19642==    by 0x80489FF: main (echo.c:77)
==19642== 
==19642== Invalid read of size 4
==19642==    at 0x4010DE9: (within /lib/ld-2.3.6.so)
==19642==    by 0x4004B1F: (within /lib/ld-2.3.6.so)
==19642==    by 0x4006792: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x429FD8D: (within /lib/tls/libdl-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x42A042C: (within /lib/tls/libdl-2.3.6.so)
==19642==    by 0x429FD20: dlopen (in /lib/tls/libdl-2.3.6.so)
==19642==    by 0x402E14C: axis2_class_loader_load_lib (class_loader.c:250)
==19642==    by 0x402E3AE: axis2_class_loader_create_dll (class_loader.c:79)
==19642==  Address 0x448C564 is 52 bytes inside a block of size 55 alloc'd
==19642==    at 0x401D38B: malloc (vg_replace_malloc.c:149)
==19642==    by 0x40281BC: axis2_allocator_malloc_impl (allocator.c:64)
==19642==    by 0x402AEA0: axis2_strdup (string.c:33)
==19642==    by 0x4030579: axis2_dll_desc_set_name (dll_desc.c:262)
==19642==    by 0x409D86E: axis2_conf_builder_process_transport_senders (conf_builder.c:774)
==19642==    by 0x409E796: axis2_conf_builder_populate_conf (conf_builder.c:303)
==19642==    by 0x40986B6: axis2_dep_engine_load_client (dep_engine.c:905)
==19642==    by 0x409FAF2: build_client_conf_ctx (conf_init.c:97)
==19642==    by 0x40AB000: axis2_svc_client_init_transports_from_conf_ctx (svc_client.c:1142)
==19642==    by 0x40AB0D9: axis2_svc_client_create_with_conf_ctx_and_svc (svc_client.c:404)
==19642==    by 0x40AB63B: axis2_svc_client_create (svc_client.c:228)
==19642==    by 0x80489FF: main (echo.c:77)
==19642== 
==19642== Invalid read of size 4
==19642==    at 0x4010CB8: (within /lib/ld-2.3.6.so)
==19642==    by 0x4006704: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x429FD8D: (within /lib/tls/libdl-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x42A042C: (within /lib/tls/libdl-2.3.6.so)
==19642==    by 0x429FD20: dlopen (in /lib/tls/libdl-2.3.6.so)
==19642==    by 0x402E14C: axis2_class_loader_load_lib (class_loader.c:250)
==19642==    by 0x402E3AE: axis2_class_loader_create_dll (class_loader.c:79)
==19642==    by 0x409EAEB: axis2_conf_builder_populate_conf (conf_builder.c:1006)
==19642==  Address 0x448F508 is 56 bytes inside a block of size 57 alloc'd
==19642==    at 0x401D38B: malloc (vg_replace_malloc.c:149)
==19642==    by 0x40281BC: axis2_allocator_malloc_impl (allocator.c:64)
==19642==    by 0x402AEA0: axis2_strdup (string.c:33)
==19642==    by 0x4030579: axis2_dll_desc_set_name (dll_desc.c:262)
==19642==    by 0x409EA89: axis2_conf_builder_populate_conf (conf_builder.c:999)
==19642==    by 0x40986B6: axis2_dep_engine_load_client (dep_engine.c:905)
==19642==    by 0x409FAF2: build_client_conf_ctx (conf_init.c:97)
==19642==    by 0x40AB000: axis2_svc_client_init_transports_from_conf_ctx (svc_client.c:1142)
==19642==    by 0x40AB0D9: axis2_svc_client_create_with_conf_ctx_and_svc (svc_client.c:404)
==19642==    by 0x40AB63B: axis2_svc_client_create (svc_client.c:228)
==19642==    by 0x80489FF: main (echo.c:77)
==19642== 
==19642== Invalid read of size 4
==19642==    at 0x4010E00: (within /lib/ld-2.3.6.so)
==19642==    by 0x4006704: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x429FD8D: (within /lib/tls/libdl-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x42A042C: (within /lib/tls/libdl-2.3.6.so)
==19642==    by 0x429FD20: dlopen (in /lib/tls/libdl-2.3.6.so)
==19642==    by 0x402E14C: axis2_class_loader_load_lib (class_loader.c:250)
==19642==    by 0x402E3AE: axis2_class_loader_create_dll (class_loader.c:79)
==19642==    by 0x409EAEB: axis2_conf_builder_populate_conf (conf_builder.c:1006)
==19642==  Address 0x448F508 is 56 bytes inside a block of size 57 alloc'd
==19642==    at 0x401D38B: malloc (vg_replace_malloc.c:149)
==19642==    by 0x40281BC: axis2_allocator_malloc_impl (allocator.c:64)
==19642==    by 0x402AEA0: axis2_strdup (string.c:33)
==19642==    by 0x4030579: axis2_dll_desc_set_name (dll_desc.c:262)
==19642==    by 0x409EA89: axis2_conf_builder_populate_conf (conf_builder.c:999)
==19642==    by 0x40986B6: axis2_dep_engine_load_client (dep_engine.c:905)
==19642==    by 0x409FAF2: build_client_conf_ctx (conf_init.c:97)
==19642==    by 0x40AB000: axis2_svc_client_init_transports_from_conf_ctx (svc_client.c:1142)
==19642==    by 0x40AB0D9: axis2_svc_client_create_with_conf_ctx_and_svc (svc_client.c:404)
==19642==    by 0x40AB63B: axis2_svc_client_create (svc_client.c:228)
==19642==    by 0x80489FF: main (echo.c:77)
==19642== 
==19642== Invalid read of size 4
==19642==    at 0x4010E00: (within /lib/ld-2.3.6.so)
==19642==    by 0x4004B1F: (within /lib/ld-2.3.6.so)
==19642==    by 0x4006792: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x429FD8D: (within /lib/tls/libdl-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x42A042C: (within /lib/tls/libdl-2.3.6.so)
==19642==    by 0x429FD20: dlopen (in /lib/tls/libdl-2.3.6.so)
==19642==    by 0x402E14C: axis2_class_loader_load_lib (class_loader.c:250)
==19642==    by 0x402E3AE: axis2_class_loader_create_dll (class_loader.c:79)
==19642==  Address 0x448F508 is 56 bytes inside a block of size 57 alloc'd
==19642==    at 0x401D38B: malloc (vg_replace_malloc.c:149)
==19642==    by 0x40281BC: axis2_allocator_malloc_impl (allocator.c:64)
==19642==    by 0x402AEA0: axis2_strdup (string.c:33)
==19642==    by 0x4030579: axis2_dll_desc_set_name (dll_desc.c:262)
==19642==    by 0x409EA89: axis2_conf_builder_populate_conf (conf_builder.c:999)
==19642==    by 0x40986B6: axis2_dep_engine_load_client (dep_engine.c:905)
==19642==    by 0x409FAF2: build_client_conf_ctx (conf_init.c:97)
==19642==    by 0x40AB000: axis2_svc_client_init_transports_from_conf_ctx (svc_client.c:1142)
==19642==    by 0x40AB0D9: axis2_svc_client_create_with_conf_ctx_and_svc (svc_client.c:404)
==19642==    by 0x40AB63B: axis2_svc_client_create (svc_client.c:228)
==19642==    by 0x80489FF: main (echo.c:77)
==19642== 
==19642== Invalid read of size 4
==19642==    at 0x4010C43: (within /lib/ld-2.3.6.so)
==19642==    by 0x4006704: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x429FD8D: (within /lib/tls/libdl-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x42A042C: (within /lib/tls/libdl-2.3.6.so)
==19642==    by 0x429FD20: dlopen (in /lib/tls/libdl-2.3.6.so)
==19642==    by 0x402E14C: axis2_class_loader_load_lib (class_loader.c:250)
==19642==    by 0x402E3AE: axis2_class_loader_create_dll (class_loader.c:79)
==19642==    by 0x409777B: axis2_dep_engine_load_module_dll (dep_engine.c:1298)
==19642==  Address 0x44BAD90 is 64 bytes inside a block of size 67 alloc'd
==19642==    at 0x401D38B: malloc (vg_replace_malloc.c:149)
==19642==    by 0x40281BC: axis2_allocator_malloc_impl (allocator.c:64)
==19642==    by 0x402AEA0: axis2_strdup (string.c:33)
==19642==    by 0x4030579: axis2_dll_desc_set_name (dll_desc.c:262)
==19642==    by 0x40976E1: axis2_dep_engine_load_module_dll (dep_engine.c:1281)
==19642==    by 0x409833D: axis2_dep_engine_do_deploy (dep_engine.c:1432)
==19642==    by 0x409A890: axis2_ws_info_list_update (ws_info_list.c:512)
==19642==    by 0x409F260: axis2_repos_listener_update (repos_listener.c:281)
==19642==    by 0x409F67A: axis2_repos_listener_init (repos_listener.c:310)
==19642==    by 0x409F6F7: axis2_repos_listener_create_with_folder_name_and_dep_engine (repos_listener.c:177)
==19642==    by 0x4098788: axis2_dep_engine_load_client (dep_engine.c:921)
==19642==    by 0x409FAF2: build_client_conf_ctx (conf_init.c:97)
==19642== 
==19642== Invalid read of size 4
==19642==    at 0x4010DD3: (within /lib/ld-2.3.6.so)
==19642==    by 0x4006704: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x429FD8D: (within /lib/tls/libdl-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x42A042C: (within /lib/tls/libdl-2.3.6.so)
==19642==    by 0x429FD20: dlopen (in /lib/tls/libdl-2.3.6.so)
==19642==    by 0x402E14C: axis2_class_loader_load_lib (class_loader.c:250)
==19642==    by 0x402E3AE: axis2_class_loader_create_dll (class_loader.c:79)
==19642==    by 0x409777B: axis2_dep_engine_load_module_dll (dep_engine.c:1298)
==19642==  Address 0x44BAD90 is 64 bytes inside a block of size 67 alloc'd
==19642==    at 0x401D38B: malloc (vg_replace_malloc.c:149)
==19642==    by 0x40281BC: axis2_allocator_malloc_impl (allocator.c:64)
==19642==    by 0x402AEA0: axis2_strdup (string.c:33)
==19642==    by 0x4030579: axis2_dll_desc_set_name (dll_desc.c:262)
==19642==    by 0x40976E1: axis2_dep_engine_load_module_dll (dep_engine.c:1281)
==19642==    by 0x409833D: axis2_dep_engine_do_deploy (dep_engine.c:1432)
==19642==    by 0x409A890: axis2_ws_info_list_update (ws_info_list.c:512)
==19642==    by 0x409F260: axis2_repos_listener_update (repos_listener.c:281)
==19642==    by 0x409F67A: axis2_repos_listener_init (repos_listener.c:310)
==19642==    by 0x409F6F7: axis2_repos_listener_create_with_folder_name_and_dep_engine (repos_listener.c:177)
==19642==    by 0x4098788: axis2_dep_engine_load_client (dep_engine.c:921)
==19642==    by 0x409FAF2: build_client_conf_ctx (conf_init.c:97)
==19642== 
==19642== Invalid read of size 4
==19642==    at 0x4010DD3: (within /lib/ld-2.3.6.so)
==19642==    by 0x4004B78: (within /lib/ld-2.3.6.so)
==19642==    by 0x4006792: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x429FD8D: (within /lib/tls/libdl-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x42A042C: (within /lib/tls/libdl-2.3.6.so)
==19642==    by 0x429FD20: dlopen (in /lib/tls/libdl-2.3.6.so)
==19642==    by 0x402E14C: axis2_class_loader_load_lib (class_loader.c:250)
==19642==    by 0x402E3AE: axis2_class_loader_create_dll (class_loader.c:79)
==19642==  Address 0x44BAD90 is 64 bytes inside a block of size 67 alloc'd
==19642==    at 0x401D38B: malloc (vg_replace_malloc.c:149)
==19642==    by 0x40281BC: axis2_allocator_malloc_impl (allocator.c:64)
==19642==    by 0x402AEA0: axis2_strdup (string.c:33)
==19642==    by 0x4030579: axis2_dll_desc_set_name (dll_desc.c:262)
==19642==    by 0x40976E1: axis2_dep_engine_load_module_dll (dep_engine.c:1281)
==19642==    by 0x409833D: axis2_dep_engine_do_deploy (dep_engine.c:1432)
==19642==    by 0x409A890: axis2_ws_info_list_update (ws_info_list.c:512)
==19642==    by 0x409F260: axis2_repos_listener_update (repos_listener.c:281)
==19642==    by 0x409F67A: axis2_repos_listener_init (repos_listener.c:310)
==19642==    by 0x409F6F7: axis2_repos_listener_create_with_folder_name_and_dep_engine (repos_listener.c:177)
==19642==    by 0x4098788: axis2_dep_engine_load_client (dep_engine.c:921)
==19642==    by 0x409FAF2: build_client_conf_ctx (conf_init.c:97)
==19642== 
==19642== Conditional jump or move depends on uninitialised value(s)
==19642==    at 0x4008ED5: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A4F24: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x429FD8D: (within /lib/tls/libdl-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x42A042C: (within /lib/tls/libdl-2.3.6.so)
==19642==    by 0x429FD20: dlopen (in /lib/tls/libdl-2.3.6.so)
==19642==    by 0x402E14C: axis2_class_loader_load_lib (class_loader.c:250)
==19642==    by 0x402E3AE: axis2_class_loader_create_dll (class_loader.c:79)
==19642==    by 0x409777B: axis2_dep_engine_load_module_dll (dep_engine.c:1298)
==19642==    by 0x409833D: axis2_dep_engine_do_deploy (dep_engine.c:1432)
==19642== 
==19642== Conditional jump or move depends on uninitialised value(s)
==19642==    at 0x4008B2E: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A4F24: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x429FD8D: (within /lib/tls/libdl-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x42A042C: (within /lib/tls/libdl-2.3.6.so)
==19642==    by 0x429FD20: dlopen (in /lib/tls/libdl-2.3.6.so)
==19642==    by 0x402E14C: axis2_class_loader_load_lib (class_loader.c:250)
==19642==    by 0x402E3AE: axis2_class_loader_create_dll (class_loader.c:79)
==19642==    by 0x409777B: axis2_dep_engine_load_module_dll (dep_engine.c:1298)
==19642==    by 0x409833D: axis2_dep_engine_do_deploy (dep_engine.c:1432)
==19642== 
==19642== Invalid read of size 4
==19642==    at 0x4010CE7: (within /lib/ld-2.3.6.so)
==19642==    by 0x4006704: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x429FD8D: (within /lib/tls/libdl-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x42A042C: (within /lib/tls/libdl-2.3.6.so)
==19642==    by 0x429FD20: dlopen (in /lib/tls/libdl-2.3.6.so)
==19642==    by 0x402E14C: axis2_class_loader_load_lib (class_loader.c:250)
==19642==    by 0x402E3AE: axis2_class_loader_create_dll (class_loader.c:79)
==19642==    by 0x409777B: axis2_dep_engine_load_module_dll (dep_engine.c:1298)
==19642==  Address 0x44D475C is 60 bytes inside a block of size 63 alloc'd
==19642==    at 0x401D38B: malloc (vg_replace_malloc.c:149)
==19642==    by 0x40281BC: axis2_allocator_malloc_impl (allocator.c:64)
==19642==    by 0x402AEA0: axis2_strdup (string.c:33)
==19642==    by 0x4030579: axis2_dll_desc_set_name (dll_desc.c:262)
==19642==    by 0x40976E1: axis2_dep_engine_load_module_dll (dep_engine.c:1281)
==19642==    by 0x409833D: axis2_dep_engine_do_deploy (dep_engine.c:1432)
==19642==    by 0x409A890: axis2_ws_info_list_update (ws_info_list.c:512)
==19642==    by 0x409F260: axis2_repos_listener_update (repos_listener.c:281)
==19642==    by 0x409F67A: axis2_repos_listener_init (repos_listener.c:310)
==19642==    by 0x409F6F7: axis2_repos_listener_create_with_folder_name_and_dep_engine (repos_listener.c:177)
==19642==    by 0x4098788: axis2_dep_engine_load_client (dep_engine.c:921)
==19642==    by 0x409FAF2: build_client_conf_ctx (conf_init.c:97)
==19642== 
==19642== Invalid read of size 4
==19642==    at 0x4010E17: (within /lib/ld-2.3.6.so)
==19642==    by 0x4006704: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x429FD8D: (within /lib/tls/libdl-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x42A042C: (within /lib/tls/libdl-2.3.6.so)
==19642==    by 0x429FD20: dlopen (in /lib/tls/libdl-2.3.6.so)
==19642==    by 0x402E14C: axis2_class_loader_load_lib (class_loader.c:250)
==19642==    by 0x402E3AE: axis2_class_loader_create_dll (class_loader.c:79)
==19642==    by 0x409777B: axis2_dep_engine_load_module_dll (dep_engine.c:1298)
==19642==  Address 0x44D475C is 60 bytes inside a block of size 63 alloc'd
==19642==    at 0x401D38B: malloc (vg_replace_malloc.c:149)
==19642==    by 0x40281BC: axis2_allocator_malloc_impl (allocator.c:64)
==19642==    by 0x402AEA0: axis2_strdup (string.c:33)
==19642==    by 0x4030579: axis2_dll_desc_set_name (dll_desc.c:262)
==19642==    by 0x40976E1: axis2_dep_engine_load_module_dll (dep_engine.c:1281)
==19642==    by 0x409833D: axis2_dep_engine_do_deploy (dep_engine.c:1432)
==19642==    by 0x409A890: axis2_ws_info_list_update (ws_info_list.c:512)
==19642==    by 0x409F260: axis2_repos_listener_update (repos_listener.c:281)
==19642==    by 0x409F67A: axis2_repos_listener_init (repos_listener.c:310)
==19642==    by 0x409F6F7: axis2_repos_listener_create_with_folder_name_and_dep_engine (repos_listener.c:177)
==19642==    by 0x4098788: axis2_dep_engine_load_client (dep_engine.c:921)
==19642==    by 0x409FAF2: build_client_conf_ctx (conf_init.c:97)
==19642== 
==19642== Invalid read of size 4
==19642==    at 0x4010E17: (within /lib/ld-2.3.6.so)
==19642==    by 0x4004B78: (within /lib/ld-2.3.6.so)
==19642==    by 0x4006792: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x429FD8D: (within /lib/tls/libdl-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x42A042C: (within /lib/tls/libdl-2.3.6.so)
==19642==    by 0x429FD20: dlopen (in /lib/tls/libdl-2.3.6.so)
==19642==    by 0x402E14C: axis2_class_loader_load_lib (class_loader.c:250)
==19642==    by 0x402E3AE: axis2_class_loader_create_dll (class_loader.c:79)
==19642==  Address 0x44D475C is 60 bytes inside a block of size 63 alloc'd
==19642==    at 0x401D38B: malloc (vg_replace_malloc.c:149)
==19642==    by 0x40281BC: axis2_allocator_malloc_impl (allocator.c:64)
==19642==    by 0x402AEA0: axis2_strdup (string.c:33)
==19642==    by 0x4030579: axis2_dll_desc_set_name (dll_desc.c:262)
==19642==    by 0x40976E1: axis2_dep_engine_load_module_dll (dep_engine.c:1281)
==19642==    by 0x409833D: axis2_dep_engine_do_deploy (dep_engine.c:1432)
==19642==    by 0x409A890: axis2_ws_info_list_update (ws_info_list.c:512)
==19642==    by 0x409F260: axis2_repos_listener_update (repos_listener.c:281)
==19642==    by 0x409F67A: axis2_repos_listener_init (repos_listener.c:310)
==19642==    by 0x409F6F7: axis2_repos_listener_create_with_folder_name_and_dep_engine (repos_listener.c:177)
==19642==    by 0x4098788: axis2_dep_engine_load_client (dep_engine.c:921)
==19642==    by 0x409FAF2: build_client_conf_ctx (conf_init.c:97)
==19642== 
==19642== Conditional jump or move depends on uninitialised value(s)
==19642==    at 0x4010C4E: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x43A6D6C: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A6DCD: __libc_dlopen_mode (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x4380B7C: __nss_lookup_function (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x4380C7F: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x4382705: __nss_hosts_lookup (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x43855A5: gethostbyname_r (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x4384DDD: gethostbyname (in /lib/tls/libc-2.3.6.so)
==19642== 
==19642== Conditional jump or move depends on uninitialised value(s)
==19642==    at 0x4010C5D: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x43A6D6C: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A6DCD: __libc_dlopen_mode (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x4380B7C: __nss_lookup_function (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x4380C7F: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x4382705: __nss_hosts_lookup (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x43855A5: gethostbyname_r (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x4384DDD: gethostbyname (in /lib/tls/libc-2.3.6.so)
==19642== 
==19642== Conditional jump or move depends on uninitialised value(s)
==19642==    at 0x4010C6C: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x43A6D6C: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A6DCD: __libc_dlopen_mode (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x4380B7C: __nss_lookup_function (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x4380C7F: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x4382705: __nss_hosts_lookup (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x43855A5: gethostbyname_r (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x4384DDD: gethostbyname (in /lib/tls/libc-2.3.6.so)
==19642== 
==19642== Conditional jump or move depends on uninitialised value(s)
==19642==    at 0x4010C7B: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x43A6D6C: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A6DCD: __libc_dlopen_mode (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x4380B7C: __nss_lookup_function (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x4380C7F: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x4382705: __nss_hosts_lookup (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x43855A5: gethostbyname_r (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x4384DDD: gethostbyname (in /lib/tls/libc-2.3.6.so)
==19642== 
==19642== Conditional jump or move depends on uninitialised value(s)
==19642==    at 0x4010DDC: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x43A6D6C: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A6DCD: __libc_dlopen_mode (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x4380B7C: __nss_lookup_function (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x4380C7F: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x4382705: __nss_hosts_lookup (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x43855A5: gethostbyname_r (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x4384DDD: gethostbyname (in /lib/tls/libc-2.3.6.so)
==19642== 
==19642== Conditional jump or move depends on uninitialised value(s)
==19642==    at 0x4010DE7: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x43A6D6C: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A6DCD: __libc_dlopen_mode (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x4380B7C: __nss_lookup_function (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x4380C7F: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x4382705: __nss_hosts_lookup (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x43855A5: gethostbyname_r (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x4384DDD: gethostbyname (in /lib/tls/libc-2.3.6.so)
==19642== 
==19642== Conditional jump or move depends on uninitialised value(s)
==19642==    at 0x4010DDC: (within /lib/ld-2.3.6.so)
==19642==    by 0x4004B78: (within /lib/ld-2.3.6.so)
==19642==    by 0x4006792: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x43A6D6C: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A6DCD: __libc_dlopen_mode (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x4380B7C: __nss_lookup_function (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x4380C7F: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x4382705: __nss_hosts_lookup (in /lib/tls/libc-2.3.6.so)
==19642== 
==19642== Conditional jump or move depends on uninitialised value(s)
==19642==    at 0x4010DE7: (within /lib/ld-2.3.6.so)
==19642==    by 0x4004B78: (within /lib/ld-2.3.6.so)
==19642==    by 0x4006792: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x43A6D6C: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A6DCD: __libc_dlopen_mode (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x4380B7C: __nss_lookup_function (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x4380C7F: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x4382705: __nss_hosts_lookup (in /lib/tls/libc-2.3.6.so)
==19642== 
==19642== Invalid read of size 4
==19642==    at 0x4010E00: (within /lib/ld-2.3.6.so)
==19642==    by 0x4004B78: (within /lib/ld-2.3.6.so)
==19642==    by 0x4006792: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x43A6D6C: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A6DCD: __libc_dlopen_mode (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x4380B7C: __nss_lookup_function (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x4380C7F: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x4382705: __nss_hosts_lookup (in /lib/tls/libc-2.3.6.so)
==19642==  Address 0x45D5E90 is 24 bytes inside a block of size 27 alloc'd
==19642==    at 0x401D38B: malloc (vg_replace_malloc.c:149)
==19642==    by 0x4006B83: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x43A6D6C: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==19642==    by 0x43A6DCD: __libc_dlopen_mode (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x4380B7C: __nss_lookup_function (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x4380C7F: (within /lib/tls/libc-2.3.6.so)
==19642==    by 0x4382705: __nss_hosts_lookup (in /lib/tls/libc-2.3.6.so)
==19642==    by 0x43855A5: gethostbyname_r (in /lib/tls/libc-2.3.6.so)
==19642== 
==19642== ERROR SUMMARY: 29 errors from 23 contexts (suppressed: 45 from 1)
==19642== malloc/free: in use at exit: 260 bytes in 4 blocks.
==19642== malloc/free: 15,942 allocs, 15,938 frees, 1,082,013 bytes allocated.
==19642== For counts of detected errors, rerun with: -v
==19642== searching for pointers to 4 not-freed blocks.
==19642== checked 322,292 bytes.
==19642== 
==19642== LEAK SUMMARY:
==19642==    definitely lost: 0 bytes in 0 blocks.
==19642==      possibly lost: 0 bytes in 0 blocks.
==19642==    still reachable: 260 bytes in 4 blocks.
==19642==         suppressed: 0 bytes in 0 blocks.
==19642== Reachable blocks (those to which a pointer was found) are not shown.
==19642== To see them, rerun with: --show-reachable=yes


> memory leaks
> ------------
>
>                 Key: AXIS2C-399
>                 URL: http://issues.apache.org/jira/browse/AXIS2C-399
>             Project: Axis2-C
>          Issue Type: Bug
>    Affects Versions: Current (Nightly)
>         Environment: linux simple http server
>            Reporter: Marc Giger
>
> I see massive memory leaks with the Simple Axis2 HTTP Server.
> Because I can't test it with mod_axis2 I can only report it with the simple http server.
> Here are two valgrind outputs:
> The first one is with a shoot to the sample echo service:
> Started Simple Axis2 HTTP Server ...
> ==19904==
> ==19904== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 45 from
> 1) ==19904== malloc/free: in use at exit: 71,000 bytes in 1,038 blocks.
> ==19904== malloc/free: 15,119 allocs, 14,081 frees, 1,513,871 bytes
> allocated. ==19904== For counts of detected errors, rerun with: -v
> ==19904== searching for pointers to 1,038 not-freed blocks.
> ==19904== checked 8,697,064 bytes.
> ==19904==
> ==19904== LEAK SUMMARY:
> ==19904==    definitely lost: 70,309 bytes in 1,023 blocks.
> ==19904==      possibly lost: 136 bytes in 1 blocks.
> ==19904==    still reachable: 555 bytes in 14 blocks.
> ==19904==         suppressed: 0 bytes in 0 blocks.
> ==19904== Use --leak-check=full to see details of leaked memory.
> This second one is with a service built with the skeleton generator and
> no data binding but just XML in/out:
> Started Simple Axis2 HTTP Server ...
> ==13034==
> ==13034== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 46 from
> 1) ==13034== malloc/free: in use at exit: 200,214 bytes in 1,025 blocks.
> ==13034== malloc/free: 24,826 allocs, 23,801 frees, 2,676,022 bytes
> allocated. ==13034== For counts of detected errors, rerun with: -v
> ==13034== searching for pointers to 1,025 not-freed blocks.
> ==13034== checked 8,697,064 bytes.
> ==13034==
> ==13034== LEAK SUMMARY:
> ==13034==    definitely lost: 199,523 bytes in 1,010 blocks.
> ==13034==      possibly lost: 136 bytes in 1 blocks.
> ==13034==    still reachable: 555 bytes in 14 blocks.
> ==13034==         suppressed: 0 bytes in 0 blocks.
> ==13034== Use --leak-check=full to see details of leaked memory.
> My service function looks like the following:
> axiom_node_t* axis2_skel_TestService_Test (const axis2_env_t *env,
> 					      axiom_node_t* param0 )
> {
> 	return param0;
> }
> In this case i sent a document with about 34KB in size.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

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


[jira] Updated: (AXIS2C-399) memory leaks

Posted by "Samisa Abeysinghe (JIRA)" <ji...@apache.org>.
     [ http://issues.apache.org/jira/browse/AXIS2C-399?page=all ]

Samisa Abeysinghe updated AXIS2C-399:
-------------------------------------

    Fix Version/s: 0.96
         Assignee: Samisa Abeysinghe

> memory leaks
> ------------
>
>                 Key: AXIS2C-399
>                 URL: http://issues.apache.org/jira/browse/AXIS2C-399
>             Project: Axis2-C
>          Issue Type: Bug
>    Affects Versions: Current (Nightly)
>         Environment: linux simple http server
>            Reporter: Marc Giger
>         Assigned To: Samisa Abeysinghe
>             Fix For: 0.96
>
>
> I see massive memory leaks with the Simple Axis2 HTTP Server.
> Because I can't test it with mod_axis2 I can only report it with the simple http server.
> Here are two valgrind outputs:
> The first one is with a shoot to the sample echo service:
> Started Simple Axis2 HTTP Server ...
> ==19904==
> ==19904== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 45 from
> 1) ==19904== malloc/free: in use at exit: 71,000 bytes in 1,038 blocks.
> ==19904== malloc/free: 15,119 allocs, 14,081 frees, 1,513,871 bytes
> allocated. ==19904== For counts of detected errors, rerun with: -v
> ==19904== searching for pointers to 1,038 not-freed blocks.
> ==19904== checked 8,697,064 bytes.
> ==19904==
> ==19904== LEAK SUMMARY:
> ==19904==    definitely lost: 70,309 bytes in 1,023 blocks.
> ==19904==      possibly lost: 136 bytes in 1 blocks.
> ==19904==    still reachable: 555 bytes in 14 blocks.
> ==19904==         suppressed: 0 bytes in 0 blocks.
> ==19904== Use --leak-check=full to see details of leaked memory.
> This second one is with a service built with the skeleton generator and
> no data binding but just XML in/out:
> Started Simple Axis2 HTTP Server ...
> ==13034==
> ==13034== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 46 from
> 1) ==13034== malloc/free: in use at exit: 200,214 bytes in 1,025 blocks.
> ==13034== malloc/free: 24,826 allocs, 23,801 frees, 2,676,022 bytes
> allocated. ==13034== For counts of detected errors, rerun with: -v
> ==13034== searching for pointers to 1,025 not-freed blocks.
> ==13034== checked 8,697,064 bytes.
> ==13034==
> ==13034== LEAK SUMMARY:
> ==13034==    definitely lost: 199,523 bytes in 1,010 blocks.
> ==13034==      possibly lost: 136 bytes in 1 blocks.
> ==13034==    still reachable: 555 bytes in 14 blocks.
> ==13034==         suppressed: 0 bytes in 0 blocks.
> ==13034== Use --leak-check=full to see details of leaked memory.
> My service function looks like the following:
> axiom_node_t* axis2_skel_TestService_Test (const axis2_env_t *env,
> 					      axiom_node_t* param0 )
> {
> 	return param0;
> }
> In this case i sent a document with about 34KB in size.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

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


[jira] Commented: (AXIS2C-399) memory leaks

Posted by "Chris Darroch (JIRA)" <ji...@apache.org>.
    [ http://issues.apache.org/jira/browse/AXIS2C-399?page=comments#action_12449734 ] 
            
Chris Darroch commented on AXIS2C-399:
--------------------------------------

Just to reiterate a point, I think that if Axis2/C could be converted to the use of
APR memory pools, this kind of concern about memory leakage would be
significantly reduced, if not erased.  I provided an initial patch here:

http://marc.theaimsgroup.com/?l=axis-c-dev&m=116259914508051&w=2

where mod_axis2 is modified to override the standard AXIS2_MALLOC()
and AXIS2_FREE().  In particular, AXIS2_FREE() becomes a no-op, and
AXIS2_MALLOC() allocates from an APR memory pool.

During httpd configuration, the memory pool is the one that's passed to
the child_init hook function -- this pool is suitable for use when creating
"configuration" data that should persist throughout the life of a process.

Then, for each request, the pool that's used is the thread-private pool for
that individual request.  Anything that's allocated during the request is then
cleared automatically after httpd finishes serving the request.

The axis2_http_server could be fairly easily modified to do a similar thing.
You do need to remove any calls to AXIS2_REALLOC(); I did this in the
main code but rampart and a few other places would need editing as well.

The problem I've had is that after a few requests, you get a segfault.  My
assumption is that this must be caused by some place where the code
is editing the "config" data structures within each request.  Any such editing
should either be removed -- i.e., do it during the child_init phase -- or
should use the pool that was used for the original "config" data.

This can be done by:

a) Creating a thread mutex and sub-pool in child_init, using the sub-pool
for all "config" allocations, and then storing pointers to the mutex and sub-pool
in the "config" data structures.

b) During a request, acquiring the mutex, using the "config" sub-pool to modify
the "config" data structures, and releasing the mutex.

Those steps ensure that the "config" data can be modified in a thread-safe
manner during request handling.  The sub-pool is required to ensure that
you don't try to use the original pool passed during child_init, because at
request time some other thread in a different part of httpd might be using it.
You can use it in child_init safely because httpd is single-threaded at that
early stage, but not if you're planning on modifying the stuff you do in child_init
later on.

If that can be done, then you can later simply remove all calls to AXIS2_FREE()
and friends (like AXIOM_NODE_FREE_TREE() and so forth)!  This has
multiple advantages.

First, it's much harder to accidentally free something too early and cause
a segfault.  If you do get a segfault, you know you must be messing with
"config" data somewhere.

Second, when dealing with the normal code path (where no errors occur),
you don't have to worry about freeing everything you allocate.  This is
presumably the source of the memory leaks caught by valgrind, since the
bug reporter's service is just a stub.  Given all the code that might
execute to handle a single request, and all the different normal code paths
(depending on the type of request, whether MTOM or addressing or rampart
or whatever is in use, etc.), that's a lot of code you otherwise have to
review and verify has absolutely no leaks.  Hard.

Third, when dealing with error conditions, you can also simplify your code.
In many functions, an error condition requires you to free all the internal
structures that have been allocated so far during the function's execution.
Often each subsequent error handling block has to free one additional data
structure.  It's easy to lose track of what needs to be freed when writing
such code, especially because it's unlikely any coder would actually test
each error handling block -- so they'll only execute when someone actually
encounters an error, and then errors in the error handling block itself
(such as memory freed too early, or twice) end up disguising the error
condition!  If you can just forget about freeing memory, these error handling
blocks of code often become much simpler and easier to write and verify.

Anyway, that's my long-winded 2 cents worth.

> memory leaks
> ------------
>
>                 Key: AXIS2C-399
>                 URL: http://issues.apache.org/jira/browse/AXIS2C-399
>             Project: Axis2-C
>          Issue Type: Bug
>    Affects Versions: Current (Nightly)
>         Environment: linux simple http server
>            Reporter: Marc Giger
>
> I see massive memory leaks with the Simple Axis2 HTTP Server.
> Because I can't test it with mod_axis2 I can only report it with the simple http server.
> Here are two valgrind outputs:
> The first one is with a shoot to the sample echo service:
> Started Simple Axis2 HTTP Server ...
> ==19904==
> ==19904== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 45 from
> 1) ==19904== malloc/free: in use at exit: 71,000 bytes in 1,038 blocks.
> ==19904== malloc/free: 15,119 allocs, 14,081 frees, 1,513,871 bytes
> allocated. ==19904== For counts of detected errors, rerun with: -v
> ==19904== searching for pointers to 1,038 not-freed blocks.
> ==19904== checked 8,697,064 bytes.
> ==19904==
> ==19904== LEAK SUMMARY:
> ==19904==    definitely lost: 70,309 bytes in 1,023 blocks.
> ==19904==      possibly lost: 136 bytes in 1 blocks.
> ==19904==    still reachable: 555 bytes in 14 blocks.
> ==19904==         suppressed: 0 bytes in 0 blocks.
> ==19904== Use --leak-check=full to see details of leaked memory.
> This second one is with a service built with the skeleton generator and
> no data binding but just XML in/out:
> Started Simple Axis2 HTTP Server ...
> ==13034==
> ==13034== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 46 from
> 1) ==13034== malloc/free: in use at exit: 200,214 bytes in 1,025 blocks.
> ==13034== malloc/free: 24,826 allocs, 23,801 frees, 2,676,022 bytes
> allocated. ==13034== For counts of detected errors, rerun with: -v
> ==13034== searching for pointers to 1,025 not-freed blocks.
> ==13034== checked 8,697,064 bytes.
> ==13034==
> ==13034== LEAK SUMMARY:
> ==13034==    definitely lost: 199,523 bytes in 1,010 blocks.
> ==13034==      possibly lost: 136 bytes in 1 blocks.
> ==13034==    still reachable: 555 bytes in 14 blocks.
> ==13034==         suppressed: 0 bytes in 0 blocks.
> ==13034== Use --leak-check=full to see details of leaked memory.
> My service function looks like the following:
> axiom_node_t* axis2_skel_TestService_Test (const axis2_env_t *env,
> 					      axiom_node_t* param0 )
> {
> 	return param0;
> }
> In this case i sent a document with about 34KB in size.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

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


[jira] Commented: (AXIS2C-399) memory leaks

Posted by "Samisa Abeysinghe (JIRA)" <ji...@apache.org>.
    [ http://issues.apache.org/jira/browse/AXIS2C-399?page=comments#action_12454323 ] 
            
Samisa Abeysinghe commented on AXIS2C-399:
------------------------------------------

I have fixed all the major leaks. However, the comments by Chris needs to be addressed seperately.

> memory leaks
> ------------
>
>                 Key: AXIS2C-399
>                 URL: http://issues.apache.org/jira/browse/AXIS2C-399
>             Project: Axis2-C
>          Issue Type: Bug
>    Affects Versions: Current (Nightly)
>         Environment: linux simple http server
>            Reporter: Marc Giger
>
> I see massive memory leaks with the Simple Axis2 HTTP Server.
> Because I can't test it with mod_axis2 I can only report it with the simple http server.
> Here are two valgrind outputs:
> The first one is with a shoot to the sample echo service:
> Started Simple Axis2 HTTP Server ...
> ==19904==
> ==19904== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 45 from
> 1) ==19904== malloc/free: in use at exit: 71,000 bytes in 1,038 blocks.
> ==19904== malloc/free: 15,119 allocs, 14,081 frees, 1,513,871 bytes
> allocated. ==19904== For counts of detected errors, rerun with: -v
> ==19904== searching for pointers to 1,038 not-freed blocks.
> ==19904== checked 8,697,064 bytes.
> ==19904==
> ==19904== LEAK SUMMARY:
> ==19904==    definitely lost: 70,309 bytes in 1,023 blocks.
> ==19904==      possibly lost: 136 bytes in 1 blocks.
> ==19904==    still reachable: 555 bytes in 14 blocks.
> ==19904==         suppressed: 0 bytes in 0 blocks.
> ==19904== Use --leak-check=full to see details of leaked memory.
> This second one is with a service built with the skeleton generator and
> no data binding but just XML in/out:
> Started Simple Axis2 HTTP Server ...
> ==13034==
> ==13034== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 46 from
> 1) ==13034== malloc/free: in use at exit: 200,214 bytes in 1,025 blocks.
> ==13034== malloc/free: 24,826 allocs, 23,801 frees, 2,676,022 bytes
> allocated. ==13034== For counts of detected errors, rerun with: -v
> ==13034== searching for pointers to 1,025 not-freed blocks.
> ==13034== checked 8,697,064 bytes.
> ==13034==
> ==13034== LEAK SUMMARY:
> ==13034==    definitely lost: 199,523 bytes in 1,010 blocks.
> ==13034==      possibly lost: 136 bytes in 1 blocks.
> ==13034==    still reachable: 555 bytes in 14 blocks.
> ==13034==         suppressed: 0 bytes in 0 blocks.
> ==13034== Use --leak-check=full to see details of leaked memory.
> My service function looks like the following:
> axiom_node_t* axis2_skel_TestService_Test (const axis2_env_t *env,
> 					      axiom_node_t* param0 )
> {
> 	return param0;
> }
> In this case i sent a document with about 34KB in size.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

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


[jira] Commented: (AXIS2C-399) memory leaks

Posted by "Samisa Abeysinghe (JIRA)" <ji...@apache.org>.
    [ http://issues.apache.org/jira/browse/AXIS2C-399?page=comments#action_12454886 ] 
            
Samisa Abeysinghe commented on AXIS2C-399:
------------------------------------------

Please also note that I am using Apache/2.2.3 httpd

> memory leaks
> ------------
>
>                 Key: AXIS2C-399
>                 URL: http://issues.apache.org/jira/browse/AXIS2C-399
>             Project: Axis2-C
>          Issue Type: Bug
>    Affects Versions: Current (Nightly)
>         Environment: linux simple http server
>            Reporter: Marc Giger
>
> I see massive memory leaks with the Simple Axis2 HTTP Server.
> Because I can't test it with mod_axis2 I can only report it with the simple http server.
> Here are two valgrind outputs:
> The first one is with a shoot to the sample echo service:
> Started Simple Axis2 HTTP Server ...
> ==19904==
> ==19904== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 45 from
> 1) ==19904== malloc/free: in use at exit: 71,000 bytes in 1,038 blocks.
> ==19904== malloc/free: 15,119 allocs, 14,081 frees, 1,513,871 bytes
> allocated. ==19904== For counts of detected errors, rerun with: -v
> ==19904== searching for pointers to 1,038 not-freed blocks.
> ==19904== checked 8,697,064 bytes.
> ==19904==
> ==19904== LEAK SUMMARY:
> ==19904==    definitely lost: 70,309 bytes in 1,023 blocks.
> ==19904==      possibly lost: 136 bytes in 1 blocks.
> ==19904==    still reachable: 555 bytes in 14 blocks.
> ==19904==         suppressed: 0 bytes in 0 blocks.
> ==19904== Use --leak-check=full to see details of leaked memory.
> This second one is with a service built with the skeleton generator and
> no data binding but just XML in/out:
> Started Simple Axis2 HTTP Server ...
> ==13034==
> ==13034== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 46 from
> 1) ==13034== malloc/free: in use at exit: 200,214 bytes in 1,025 blocks.
> ==13034== malloc/free: 24,826 allocs, 23,801 frees, 2,676,022 bytes
> allocated. ==13034== For counts of detected errors, rerun with: -v
> ==13034== searching for pointers to 1,025 not-freed blocks.
> ==13034== checked 8,697,064 bytes.
> ==13034==
> ==13034== LEAK SUMMARY:
> ==13034==    definitely lost: 199,523 bytes in 1,010 blocks.
> ==13034==      possibly lost: 136 bytes in 1 blocks.
> ==13034==    still reachable: 555 bytes in 14 blocks.
> ==13034==         suppressed: 0 bytes in 0 blocks.
> ==13034== Use --leak-check=full to see details of leaked memory.
> My service function looks like the following:
> axiom_node_t* axis2_skel_TestService_Test (const axis2_env_t *env,
> 					      axiom_node_t* param0 )
> {
> 	return param0;
> }
> In this case i sent a document with about 34KB in size.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

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


[jira] Commented: (AXIS2C-399) memory leaks

Posted by "Dinesh Premalal (JIRA)" <ji...@apache.org>.
    [ http://issues.apache.org/jira/browse/AXIS2C-399?page=comments#action_12451884 ] 
            
Dinesh Premalal commented on AXIS2C-399:
----------------------------------------

Error summery I got while I run echo example with valgrind

==29656== Memcheck, a memory error detector.
==29656== Copyright (C) 2002-2006, and GNU GPL'd, by Julian Seward et al.
==29656== Using LibVEX rev 1658, a library for dynamic binary translation.
==29656== Copyright (C) 2004-2006, and GNU GPL'd, by OpenWorks LLP.
==29656== Using valgrind-3.2.1-Debian, a dynamic binary instrumentation framework.
==29656== Copyright (C) 2000-2006, and GNU GPL'd, by Julian Seward et al.
==29656== For more details, rerun with: -v
==29656== 
--29656-- DWARF2 CFI reader: unhandled CFI instruction 0:50
--29656-- DWARF2 CFI reader: unhandled CFI instruction 0:50
--29656-- DWARF2 CFI reader: unhandled CFI instruction 0:50
--29656-- DWARF2 CFI reader: unhandled CFI instruction 0:50
==29656== Invalid read of size 4
==29656==    at 0x4010C81: (within /lib/ld-2.3.6.so)
==29656==    by 0x4006704: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x429FD8D: (within /lib/tls/libdl-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x42A042C: (within /lib/tls/libdl-2.3.6.so)
==29656==    by 0x429FD20: dlopen (in /lib/tls/libdl-2.3.6.so)
==29656==    by 0x402E154: axis2_class_loader_load_lib (class_loader.c:253)
==29656==    by 0x402E3BE: axis2_class_loader_create_dll (class_loader.c:79)
==29656==    by 0x409D8D6: axis2_conf_builder_process_transport_senders (conf_builder.c:780)
==29656==  Address 0x448FDAC is 52 bytes inside a block of size 55 alloc'd
==29656==    at 0x401D38B: malloc (vg_replace_malloc.c:149)
==29656==    by 0x40281BC: axis2_allocator_malloc_impl (allocator.c:64)
==29656==    by 0x402AEA0: axis2_strdup (string.c:33)
==29656==    by 0x4030589: axis2_dll_desc_set_name (dll_desc.c:262)
==29656==    by 0x409D86E: axis2_conf_builder_process_transport_senders (conf_builder.c:774)
==29656==    by 0x409E796: axis2_conf_builder_populate_conf (conf_builder.c:303)
==29656==    by 0x40986B6: axis2_dep_engine_load_client (dep_engine.c:905)
==29656==    by 0x409FAF2: build_client_conf_ctx (conf_init.c:97)
==29656==    by 0x40AB000: axis2_svc_client_init_transports_from_conf_ctx (svc_client.c:1142)
==29656==    by 0x40AB0D9: axis2_svc_client_create_with_conf_ctx_and_svc (svc_client.c:404)
==29656==    by 0x40AB63B: axis2_svc_client_create (svc_client.c:228)
==29656==    by 0x80489FF: main (echo.c:77)
==29656== 
==29656== Invalid read of size 4
==29656==    at 0x4010DE9: (within /lib/ld-2.3.6.so)
==29656==    by 0x4006704: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x429FD8D: (within /lib/tls/libdl-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x42A042C: (within /lib/tls/libdl-2.3.6.so)
==29656==    by 0x429FD20: dlopen (in /lib/tls/libdl-2.3.6.so)
==29656==    by 0x402E154: axis2_class_loader_load_lib (class_loader.c:253)
==29656==    by 0x402E3BE: axis2_class_loader_create_dll (class_loader.c:79)
==29656==    by 0x409D8D6: axis2_conf_builder_process_transport_senders (conf_builder.c:780)
==29656==  Address 0x448FDAC is 52 bytes inside a block of size 55 alloc'd
==29656==    at 0x401D38B: malloc (vg_replace_malloc.c:149)
==29656==    by 0x40281BC: axis2_allocator_malloc_impl (allocator.c:64)
==29656==    by 0x402AEA0: axis2_strdup (string.c:33)
==29656==    by 0x4030589: axis2_dll_desc_set_name (dll_desc.c:262)
==29656==    by 0x409D86E: axis2_conf_builder_process_transport_senders (conf_builder.c:774)
==29656==    by 0x409E796: axis2_conf_builder_populate_conf (conf_builder.c:303)
==29656==    by 0x40986B6: axis2_dep_engine_load_client (dep_engine.c:905)
==29656==    by 0x409FAF2: build_client_conf_ctx (conf_init.c:97)
==29656==    by 0x40AB000: axis2_svc_client_init_transports_from_conf_ctx (svc_client.c:1142)
==29656==    by 0x40AB0D9: axis2_svc_client_create_with_conf_ctx_and_svc (svc_client.c:404)
==29656==    by 0x40AB63B: axis2_svc_client_create (svc_client.c:228)
==29656==    by 0x80489FF: main (echo.c:77)
==29656== 
==29656== Invalid read of size 4
==29656==    at 0x4010DE9: (within /lib/ld-2.3.6.so)
==29656==    by 0x4004B1F: (within /lib/ld-2.3.6.so)
==29656==    by 0x4006792: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x429FD8D: (within /lib/tls/libdl-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x42A042C: (within /lib/tls/libdl-2.3.6.so)
==29656==    by 0x429FD20: dlopen (in /lib/tls/libdl-2.3.6.so)
==29656==    by 0x402E154: axis2_class_loader_load_lib (class_loader.c:253)
==29656==    by 0x402E3BE: axis2_class_loader_create_dll (class_loader.c:79)
==29656==  Address 0x448FDAC is 52 bytes inside a block of size 55 alloc'd
==29656==    at 0x401D38B: malloc (vg_replace_malloc.c:149)
==29656==    by 0x40281BC: axis2_allocator_malloc_impl (allocator.c:64)
==29656==    by 0x402AEA0: axis2_strdup (string.c:33)
==29656==    by 0x4030589: axis2_dll_desc_set_name (dll_desc.c:262)
==29656==    by 0x409D86E: axis2_conf_builder_process_transport_senders (conf_builder.c:774)
==29656==    by 0x409E796: axis2_conf_builder_populate_conf (conf_builder.c:303)
==29656==    by 0x40986B6: axis2_dep_engine_load_client (dep_engine.c:905)
==29656==    by 0x409FAF2: build_client_conf_ctx (conf_init.c:97)
==29656==    by 0x40AB000: axis2_svc_client_init_transports_from_conf_ctx (svc_client.c:1142)
==29656==    by 0x40AB0D9: axis2_svc_client_create_with_conf_ctx_and_svc (svc_client.c:404)
==29656==    by 0x40AB63B: axis2_svc_client_create (svc_client.c:228)
==29656==    by 0x80489FF: main (echo.c:77)
==29656== 
==29656== Invalid read of size 4
==29656==    at 0x4010CB8: (within /lib/ld-2.3.6.so)
==29656==    by 0x4006704: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x429FD8D: (within /lib/tls/libdl-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x42A042C: (within /lib/tls/libdl-2.3.6.so)
==29656==    by 0x429FD20: dlopen (in /lib/tls/libdl-2.3.6.so)
==29656==    by 0x402E154: axis2_class_loader_load_lib (class_loader.c:253)
==29656==    by 0x402E3BE: axis2_class_loader_create_dll (class_loader.c:79)
==29656==    by 0x409EAEB: axis2_conf_builder_populate_conf (conf_builder.c:1006)
==29656==  Address 0x4492D50 is 56 bytes inside a block of size 57 alloc'd
==29656==    at 0x401D38B: malloc (vg_replace_malloc.c:149)
==29656==    by 0x40281BC: axis2_allocator_malloc_impl (allocator.c:64)
==29656==    by 0x402AEA0: axis2_strdup (string.c:33)
==29656==    by 0x4030589: axis2_dll_desc_set_name (dll_desc.c:262)
==29656==    by 0x409EA89: axis2_conf_builder_populate_conf (conf_builder.c:999)
==29656==    by 0x40986B6: axis2_dep_engine_load_client (dep_engine.c:905)
==29656==    by 0x409FAF2: build_client_conf_ctx (conf_init.c:97)
==29656==    by 0x40AB000: axis2_svc_client_init_transports_from_conf_ctx (svc_client.c:1142)
==29656==    by 0x40AB0D9: axis2_svc_client_create_with_conf_ctx_and_svc (svc_client.c:404)
==29656==    by 0x40AB63B: axis2_svc_client_create (svc_client.c:228)
==29656==    by 0x80489FF: main (echo.c:77)
==29656== 
==29656== Invalid read of size 4
==29656==    at 0x4010E00: (within /lib/ld-2.3.6.so)
==29656==    by 0x4006704: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x429FD8D: (within /lib/tls/libdl-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x42A042C: (within /lib/tls/libdl-2.3.6.so)
==29656==    by 0x429FD20: dlopen (in /lib/tls/libdl-2.3.6.so)
==29656==    by 0x402E154: axis2_class_loader_load_lib (class_loader.c:253)
==29656==    by 0x402E3BE: axis2_class_loader_create_dll (class_loader.c:79)
==29656==    by 0x409EAEB: axis2_conf_builder_populate_conf (conf_builder.c:1006)
==29656==  Address 0x4492D50 is 56 bytes inside a block of size 57 alloc'd
==29656==    at 0x401D38B: malloc (vg_replace_malloc.c:149)
==29656==    by 0x40281BC: axis2_allocator_malloc_impl (allocator.c:64)
==29656==    by 0x402AEA0: axis2_strdup (string.c:33)
==29656==    by 0x4030589: axis2_dll_desc_set_name (dll_desc.c:262)
==29656==    by 0x409EA89: axis2_conf_builder_populate_conf (conf_builder.c:999)
==29656==    by 0x40986B6: axis2_dep_engine_load_client (dep_engine.c:905)
==29656==    by 0x409FAF2: build_client_conf_ctx (conf_init.c:97)
==29656==    by 0x40AB000: axis2_svc_client_init_transports_from_conf_ctx (svc_client.c:1142)
==29656==    by 0x40AB0D9: axis2_svc_client_create_with_conf_ctx_and_svc (svc_client.c:404)
==29656==    by 0x40AB63B: axis2_svc_client_create (svc_client.c:228)
==29656==    by 0x80489FF: main (echo.c:77)
==29656== 
==29656== Invalid read of size 4
==29656==    at 0x4010E00: (within /lib/ld-2.3.6.so)
==29656==    by 0x4004B1F: (within /lib/ld-2.3.6.so)
==29656==    by 0x4006792: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x429FD8D: (within /lib/tls/libdl-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x42A042C: (within /lib/tls/libdl-2.3.6.so)
==29656==    by 0x429FD20: dlopen (in /lib/tls/libdl-2.3.6.so)
==29656==    by 0x402E154: axis2_class_loader_load_lib (class_loader.c:253)
==29656==    by 0x402E3BE: axis2_class_loader_create_dll (class_loader.c:79)
==29656==  Address 0x4492D50 is 56 bytes inside a block of size 57 alloc'd
==29656==    at 0x401D38B: malloc (vg_replace_malloc.c:149)
==29656==    by 0x40281BC: axis2_allocator_malloc_impl (allocator.c:64)
==29656==    by 0x402AEA0: axis2_strdup (string.c:33)
==29656==    by 0x4030589: axis2_dll_desc_set_name (dll_desc.c:262)
==29656==    by 0x409EA89: axis2_conf_builder_populate_conf (conf_builder.c:999)
==29656==    by 0x40986B6: axis2_dep_engine_load_client (dep_engine.c:905)
==29656==    by 0x409FAF2: build_client_conf_ctx (conf_init.c:97)
==29656==    by 0x40AB000: axis2_svc_client_init_transports_from_conf_ctx (svc_client.c:1142)
==29656==    by 0x40AB0D9: axis2_svc_client_create_with_conf_ctx_and_svc (svc_client.c:404)
==29656==    by 0x40AB63B: axis2_svc_client_create (svc_client.c:228)
==29656==    by 0x80489FF: main (echo.c:77)
==29656== 
==29656== Invalid read of size 4
==29656==    at 0x4010C43: (within /lib/ld-2.3.6.so)
==29656==    by 0x4006704: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x429FD8D: (within /lib/tls/libdl-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x42A042C: (within /lib/tls/libdl-2.3.6.so)
==29656==    by 0x429FD20: dlopen (in /lib/tls/libdl-2.3.6.so)
==29656==    by 0x402E154: axis2_class_loader_load_lib (class_loader.c:253)
==29656==    by 0x402E3BE: axis2_class_loader_create_dll (class_loader.c:79)
==29656==    by 0x409777B: axis2_dep_engine_load_module_dll (dep_engine.c:1298)
==29656==  Address 0x44BF868 is 64 bytes inside a block of size 67 alloc'd
==29656==    at 0x401D38B: malloc (vg_replace_malloc.c:149)
==29656==    by 0x40281BC: axis2_allocator_malloc_impl (allocator.c:64)
==29656==    by 0x402AEA0: axis2_strdup (string.c:33)
==29656==    by 0x4030589: axis2_dll_desc_set_name (dll_desc.c:262)
==29656==    by 0x40976E1: axis2_dep_engine_load_module_dll (dep_engine.c:1281)
==29656==    by 0x409833D: axis2_dep_engine_do_deploy (dep_engine.c:1432)
==29656==    by 0x409A890: axis2_ws_info_list_update (ws_info_list.c:512)
==29656==    by 0x409F260: axis2_repos_listener_update (repos_listener.c:281)
==29656==    by 0x409F67A: axis2_repos_listener_init (repos_listener.c:310)
==29656==    by 0x409F6F7: axis2_repos_listener_create_with_folder_name_and_dep_engine (repos_listener.c:177)
==29656==    by 0x4098788: axis2_dep_engine_load_client (dep_engine.c:921)
==29656==    by 0x409FAF2: build_client_conf_ctx (conf_init.c:97)
==29656== 
==29656== Invalid read of size 4
==29656==    at 0x4010DD3: (within /lib/ld-2.3.6.so)
==29656==    by 0x4006704: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x429FD8D: (within /lib/tls/libdl-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x42A042C: (within /lib/tls/libdl-2.3.6.so)
==29656==    by 0x429FD20: dlopen (in /lib/tls/libdl-2.3.6.so)
==29656==    by 0x402E154: axis2_class_loader_load_lib (class_loader.c:253)
==29656==    by 0x402E3BE: axis2_class_loader_create_dll (class_loader.c:79)
==29656==    by 0x409777B: axis2_dep_engine_load_module_dll (dep_engine.c:1298)
==29656==  Address 0x44BF868 is 64 bytes inside a block of size 67 alloc'd
==29656==    at 0x401D38B: malloc (vg_replace_malloc.c:149)
==29656==    by 0x40281BC: axis2_allocator_malloc_impl (allocator.c:64)
==29656==    by 0x402AEA0: axis2_strdup (string.c:33)
==29656==    by 0x4030589: axis2_dll_desc_set_name (dll_desc.c:262)
==29656==    by 0x40976E1: axis2_dep_engine_load_module_dll (dep_engine.c:1281)
==29656==    by 0x409833D: axis2_dep_engine_do_deploy (dep_engine.c:1432)
==29656==    by 0x409A890: axis2_ws_info_list_update (ws_info_list.c:512)
==29656==    by 0x409F260: axis2_repos_listener_update (repos_listener.c:281)
==29656==    by 0x409F67A: axis2_repos_listener_init (repos_listener.c:310)
==29656==    by 0x409F6F7: axis2_repos_listener_create_with_folder_name_and_dep_engine (repos_listener.c:177)
==29656==    by 0x4098788: axis2_dep_engine_load_client (dep_engine.c:921)
==29656==    by 0x409FAF2: build_client_conf_ctx (conf_init.c:97)
==29656== 
==29656== Invalid read of size 4
==29656==    at 0x4010DD3: (within /lib/ld-2.3.6.so)
==29656==    by 0x4004B78: (within /lib/ld-2.3.6.so)
==29656==    by 0x4006792: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x429FD8D: (within /lib/tls/libdl-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x42A042C: (within /lib/tls/libdl-2.3.6.so)
==29656==    by 0x429FD20: dlopen (in /lib/tls/libdl-2.3.6.so)
==29656==    by 0x402E154: axis2_class_loader_load_lib (class_loader.c:253)
==29656==    by 0x402E3BE: axis2_class_loader_create_dll (class_loader.c:79)
==29656==  Address 0x44BF868 is 64 bytes inside a block of size 67 alloc'd
==29656==    at 0x401D38B: malloc (vg_replace_malloc.c:149)
==29656==    by 0x40281BC: axis2_allocator_malloc_impl (allocator.c:64)
==29656==    by 0x402AEA0: axis2_strdup (string.c:33)
==29656==    by 0x4030589: axis2_dll_desc_set_name (dll_desc.c:262)
==29656==    by 0x40976E1: axis2_dep_engine_load_module_dll (dep_engine.c:1281)
==29656==    by 0x409833D: axis2_dep_engine_do_deploy (dep_engine.c:1432)
==29656==    by 0x409A890: axis2_ws_info_list_update (ws_info_list.c:512)
==29656==    by 0x409F260: axis2_repos_listener_update (repos_listener.c:281)
==29656==    by 0x409F67A: axis2_repos_listener_init (repos_listener.c:310)
==29656==    by 0x409F6F7: axis2_repos_listener_create_with_folder_name_and_dep_engine (repos_listener.c:177)
==29656==    by 0x4098788: axis2_dep_engine_load_client (dep_engine.c:921)
==29656==    by 0x409FAF2: build_client_conf_ctx (conf_init.c:97)
==29656== 
==29656== Conditional jump or move depends on uninitialised value(s)
==29656==    at 0x4008ED5: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A4F24: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x429FD8D: (within /lib/tls/libdl-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x42A042C: (within /lib/tls/libdl-2.3.6.so)
==29656==    by 0x429FD20: dlopen (in /lib/tls/libdl-2.3.6.so)
==29656==    by 0x402E154: axis2_class_loader_load_lib (class_loader.c:253)
==29656==    by 0x402E3BE: axis2_class_loader_create_dll (class_loader.c:79)
==29656==    by 0x409777B: axis2_dep_engine_load_module_dll (dep_engine.c:1298)
==29656==    by 0x409833D: axis2_dep_engine_do_deploy (dep_engine.c:1432)
==29656== 
==29656== Conditional jump or move depends on uninitialised value(s)
==29656==    at 0x4008B2E: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A4F24: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x429FD8D: (within /lib/tls/libdl-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x42A042C: (within /lib/tls/libdl-2.3.6.so)
==29656==    by 0x429FD20: dlopen (in /lib/tls/libdl-2.3.6.so)
==29656==    by 0x402E154: axis2_class_loader_load_lib (class_loader.c:253)
==29656==    by 0x402E3BE: axis2_class_loader_create_dll (class_loader.c:79)
==29656==    by 0x409777B: axis2_dep_engine_load_module_dll (dep_engine.c:1298)
==29656==    by 0x409833D: axis2_dep_engine_do_deploy (dep_engine.c:1432)
==29656== 
==29656== Invalid read of size 4
==29656==    at 0x4010CE7: (within /lib/ld-2.3.6.so)
==29656==    by 0x4006704: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x429FD8D: (within /lib/tls/libdl-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x42A042C: (within /lib/tls/libdl-2.3.6.so)
==29656==    by 0x429FD20: dlopen (in /lib/tls/libdl-2.3.6.so)
==29656==    by 0x402E154: axis2_class_loader_load_lib (class_loader.c:253)
==29656==    by 0x402E3BE: axis2_class_loader_create_dll (class_loader.c:79)
==29656==    by 0x409777B: axis2_dep_engine_load_module_dll (dep_engine.c:1298)
==29656==  Address 0x44D9234 is 60 bytes inside a block of size 63 alloc'd
==29656==    at 0x401D38B: malloc (vg_replace_malloc.c:149)
==29656==    by 0x40281BC: axis2_allocator_malloc_impl (allocator.c:64)
==29656==    by 0x402AEA0: axis2_strdup (string.c:33)
==29656==    by 0x4030589: axis2_dll_desc_set_name (dll_desc.c:262)
==29656==    by 0x40976E1: axis2_dep_engine_load_module_dll (dep_engine.c:1281)
==29656==    by 0x409833D: axis2_dep_engine_do_deploy (dep_engine.c:1432)
==29656==    by 0x409A890: axis2_ws_info_list_update (ws_info_list.c:512)
==29656==    by 0x409F260: axis2_repos_listener_update (repos_listener.c:281)
==29656==    by 0x409F67A: axis2_repos_listener_init (repos_listener.c:310)
==29656==    by 0x409F6F7: axis2_repos_listener_create_with_folder_name_and_dep_engine (repos_listener.c:177)
==29656==    by 0x4098788: axis2_dep_engine_load_client (dep_engine.c:921)
==29656==    by 0x409FAF2: build_client_conf_ctx (conf_init.c:97)
==29656== 
==29656== Invalid read of size 4
==29656==    at 0x4010E17: (within /lib/ld-2.3.6.so)
==29656==    by 0x4006704: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x429FD8D: (within /lib/tls/libdl-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x42A042C: (within /lib/tls/libdl-2.3.6.so)
==29656==    by 0x429FD20: dlopen (in /lib/tls/libdl-2.3.6.so)
==29656==    by 0x402E154: axis2_class_loader_load_lib (class_loader.c:253)
==29656==    by 0x402E3BE: axis2_class_loader_create_dll (class_loader.c:79)
==29656==    by 0x409777B: axis2_dep_engine_load_module_dll (dep_engine.c:1298)
==29656==  Address 0x44D9234 is 60 bytes inside a block of size 63 alloc'd
==29656==    at 0x401D38B: malloc (vg_replace_malloc.c:149)
==29656==    by 0x40281BC: axis2_allocator_malloc_impl (allocator.c:64)
==29656==    by 0x402AEA0: axis2_strdup (string.c:33)
==29656==    by 0x4030589: axis2_dll_desc_set_name (dll_desc.c:262)
==29656==    by 0x40976E1: axis2_dep_engine_load_module_dll (dep_engine.c:1281)
==29656==    by 0x409833D: axis2_dep_engine_do_deploy (dep_engine.c:1432)
==29656==    by 0x409A890: axis2_ws_info_list_update (ws_info_list.c:512)
==29656==    by 0x409F260: axis2_repos_listener_update (repos_listener.c:281)
==29656==    by 0x409F67A: axis2_repos_listener_init (repos_listener.c:310)
==29656==    by 0x409F6F7: axis2_repos_listener_create_with_folder_name_and_dep_engine (repos_listener.c:177)
==29656==    by 0x4098788: axis2_dep_engine_load_client (dep_engine.c:921)
==29656==    by 0x409FAF2: build_client_conf_ctx (conf_init.c:97)
==29656== 
==29656== Invalid read of size 4
==29656==    at 0x4010E17: (within /lib/ld-2.3.6.so)
==29656==    by 0x4004B78: (within /lib/ld-2.3.6.so)
==29656==    by 0x4006792: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x429FD8D: (within /lib/tls/libdl-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x42A042C: (within /lib/tls/libdl-2.3.6.so)
==29656==    by 0x429FD20: dlopen (in /lib/tls/libdl-2.3.6.so)
==29656==    by 0x402E154: axis2_class_loader_load_lib (class_loader.c:253)
==29656==    by 0x402E3BE: axis2_class_loader_create_dll (class_loader.c:79)
==29656==  Address 0x44D9234 is 60 bytes inside a block of size 63 alloc'd
==29656==    at 0x401D38B: malloc (vg_replace_malloc.c:149)
==29656==    by 0x40281BC: axis2_allocator_malloc_impl (allocator.c:64)
==29656==    by 0x402AEA0: axis2_strdup (string.c:33)
==29656==    by 0x4030589: axis2_dll_desc_set_name (dll_desc.c:262)
==29656==    by 0x40976E1: axis2_dep_engine_load_module_dll (dep_engine.c:1281)
==29656==    by 0x409833D: axis2_dep_engine_do_deploy (dep_engine.c:1432)
==29656==    by 0x409A890: axis2_ws_info_list_update (ws_info_list.c:512)
==29656==    by 0x409F260: axis2_repos_listener_update (repos_listener.c:281)
==29656==    by 0x409F67A: axis2_repos_listener_init (repos_listener.c:310)
==29656==    by 0x409F6F7: axis2_repos_listener_create_with_folder_name_and_dep_engine (repos_listener.c:177)
==29656==    by 0x4098788: axis2_dep_engine_load_client (dep_engine.c:921)
==29656==    by 0x409FAF2: build_client_conf_ctx (conf_init.c:97)
==29656== 
==29656== Invalid read of size 4
==29656==    at 0x4010E17: (within /lib/ld-2.3.6.so)
==29656==    by 0x4005F5B: (within /lib/ld-2.3.6.so)
==29656==    by 0x4006431: (within /lib/ld-2.3.6.so)
==29656==    by 0x4006A51: (within /lib/ld-2.3.6.so)
==29656==    by 0x400A1F6: (within /lib/ld-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x400A3CA: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A4B34: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x429FD8D: (within /lib/tls/libdl-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==  Address 0x44F2E24 is 28 bytes inside a block of size 31 alloc'd
==29656==    at 0x401D38B: malloc (vg_replace_malloc.c:149)
==29656==    by 0x4005DA5: (within /lib/ld-2.3.6.so)
==29656==    by 0x4005EE5: (within /lib/ld-2.3.6.so)
==29656==    by 0x4006431: (within /lib/ld-2.3.6.so)
==29656==    by 0x4006A51: (within /lib/ld-2.3.6.so)
==29656==    by 0x400A1F6: (within /lib/ld-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x400A3CA: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A4B34: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x429FD8D: (within /lib/tls/libdl-2.3.6.so)
==29656== 
==29656== Invalid read of size 4
==29656==    at 0x4010DD3: (within /lib/ld-2.3.6.so)
==29656==    by 0x4004B78: (within /lib/ld-2.3.6.so)
==29656==    by 0x4006792: (within /lib/ld-2.3.6.so)
==29656==    by 0x400A1F6: (within /lib/ld-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x400A3CA: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A4B34: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x429FD8D: (within /lib/tls/libdl-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x42A042C: (within /lib/tls/libdl-2.3.6.so)
==29656==  Address 0x44F2EB0 is 32 bytes inside a block of size 35 alloc'd
==29656==    at 0x401D38B: malloc (vg_replace_malloc.c:149)
==29656==    by 0x4004839: (within /lib/ld-2.3.6.so)
==29656==    by 0x40068D3: (within /lib/ld-2.3.6.so)
==29656==    by 0x400A1F6: (within /lib/ld-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x400A3CA: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A4B34: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x429FD8D: (within /lib/tls/libdl-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x42A042C: (within /lib/tls/libdl-2.3.6.so)
==29656== 
==29656== Invalid read of size 4
==29656==    at 0x4010DE9: (within /lib/ld-2.3.6.so)
==29656==    by 0x4004B78: (within /lib/ld-2.3.6.so)
==29656==    by 0x4006792: (within /lib/ld-2.3.6.so)
==29656==    by 0x400A1F6: (within /lib/ld-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x400A3CA: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A4B34: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x429FD8D: (within /lib/tls/libdl-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x42A042C: (within /lib/tls/libdl-2.3.6.so)
==29656==  Address 0x44F322C is 36 bytes inside a block of size 38 alloc'd
==29656==    at 0x401D38B: malloc (vg_replace_malloc.c:149)
==29656==    by 0x4004839: (within /lib/ld-2.3.6.so)
==29656==    by 0x40068D3: (within /lib/ld-2.3.6.so)
==29656==    by 0x400A1F6: (within /lib/ld-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x400A3CA: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A4B34: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x429FD8D: (within /lib/tls/libdl-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x42A042C: (within /lib/tls/libdl-2.3.6.so)
==29656== 
==29656== Conditional jump or move depends on uninitialised value(s)
==29656==    at 0x4010C4E: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x43A6D6C: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A6DCD: __libc_dlopen_mode (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x4380B7C: __nss_lookup_function (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x4380C7F: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x4382705: __nss_hosts_lookup (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x43855A5: gethostbyname_r (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x4384DDD: gethostbyname (in /lib/tls/libc-2.3.6.so)
==29656== 
==29656== Conditional jump or move depends on uninitialised value(s)
==29656==    at 0x4010C5D: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x43A6D6C: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A6DCD: __libc_dlopen_mode (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x4380B7C: __nss_lookup_function (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x4380C7F: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x4382705: __nss_hosts_lookup (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x43855A5: gethostbyname_r (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x4384DDD: gethostbyname (in /lib/tls/libc-2.3.6.so)
==29656== 
==29656== Conditional jump or move depends on uninitialised value(s)
==29656==    at 0x4010C6C: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x43A6D6C: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A6DCD: __libc_dlopen_mode (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x4380B7C: __nss_lookup_function (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x4380C7F: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x4382705: __nss_hosts_lookup (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x43855A5: gethostbyname_r (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x4384DDD: gethostbyname (in /lib/tls/libc-2.3.6.so)
==29656== 
==29656== Conditional jump or move depends on uninitialised value(s)
==29656==    at 0x4010C7B: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x43A6D6C: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A6DCD: __libc_dlopen_mode (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x4380B7C: __nss_lookup_function (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x4380C7F: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x4382705: __nss_hosts_lookup (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x43855A5: gethostbyname_r (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x4384DDD: gethostbyname (in /lib/tls/libc-2.3.6.so)
==29656== 
==29656== Conditional jump or move depends on uninitialised value(s)
==29656==    at 0x4010DDC: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x43A6D6C: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A6DCD: __libc_dlopen_mode (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x4380B7C: __nss_lookup_function (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x4380C7F: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x4382705: __nss_hosts_lookup (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x43855A5: gethostbyname_r (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x4384DDD: gethostbyname (in /lib/tls/libc-2.3.6.so)
==29656== 
==29656== Conditional jump or move depends on uninitialised value(s)
==29656==    at 0x4010DE7: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x43A6D6C: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A6DCD: __libc_dlopen_mode (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x4380B7C: __nss_lookup_function (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x4380C7F: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x4382705: __nss_hosts_lookup (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x43855A5: gethostbyname_r (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x4384DDD: gethostbyname (in /lib/tls/libc-2.3.6.so)
==29656== 
==29656== Conditional jump or move depends on uninitialised value(s)
==29656==    at 0x4010DDC: (within /lib/ld-2.3.6.so)
==29656==    by 0x4004B78: (within /lib/ld-2.3.6.so)
==29656==    by 0x4006792: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x43A6D6C: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A6DCD: __libc_dlopen_mode (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x4380B7C: __nss_lookup_function (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x4380C7F: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x4382705: __nss_hosts_lookup (in /lib/tls/libc-2.3.6.so)
==29656== 
==29656== Conditional jump or move depends on uninitialised value(s)
==29656==    at 0x4010DE7: (within /lib/ld-2.3.6.so)
==29656==    by 0x4004B78: (within /lib/ld-2.3.6.so)
==29656==    by 0x4006792: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x43A6D6C: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A6DCD: __libc_dlopen_mode (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x4380B7C: __nss_lookup_function (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x4380C7F: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x4382705: __nss_hosts_lookup (in /lib/tls/libc-2.3.6.so)
==29656== 
==29656== Invalid read of size 4
==29656==    at 0x4010E00: (within /lib/ld-2.3.6.so)
==29656==    by 0x4004B78: (within /lib/ld-2.3.6.so)
==29656==    by 0x4006792: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x43A6D6C: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A6DCD: __libc_dlopen_mode (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x4380B7C: __nss_lookup_function (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x4380C7F: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x4382705: __nss_hosts_lookup (in /lib/tls/libc-2.3.6.so)
==29656==  Address 0x47909C0 is 24 bytes inside a block of size 27 alloc'd
==29656==    at 0x401D38B: malloc (vg_replace_malloc.c:149)
==29656==    by 0x4006B83: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A4ACF: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A453E: _dl_open (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x43A6D6C: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x400B44E: (within /lib/ld-2.3.6.so)
==29656==    by 0x43A6DCD: __libc_dlopen_mode (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x4380B7C: __nss_lookup_function (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x4380C7F: (within /lib/tls/libc-2.3.6.so)
==29656==    by 0x4382705: __nss_hosts_lookup (in /lib/tls/libc-2.3.6.so)
==29656==    by 0x43855A5: gethostbyname_r (in /lib/tls/libc-2.3.6.so)
==29656== 
==29656== ERROR SUMMARY: 48 errors from 26 contexts (suppressed: 45 from 1)
==29656== malloc/free: in use at exit: 8,235 bytes in 242 blocks.
==29656== malloc/free: 18,983 allocs, 18,741 frees, 1,230,167 bytes allocated.
==29656== For counts of detected errors, rerun with: -v
==29656== searching for pointers to 242 not-freed blocks.
==29656== checked 327,180 bytes.
==29656== 
==29656== LEAK SUMMARY:
==29656==    definitely lost: 7,178 bytes in 234 blocks.
==29656==      possibly lost: 0 bytes in 0 blocks.
==29656==    still reachable: 1,057 bytes in 8 blocks.
==29656==         suppressed: 0 bytes in 0 blocks.
==29656== Use --leak-check=full to see details of leaked memory.

> memory leaks
> ------------
>
>                 Key: AXIS2C-399
>                 URL: http://issues.apache.org/jira/browse/AXIS2C-399
>             Project: Axis2-C
>          Issue Type: Bug
>    Affects Versions: Current (Nightly)
>         Environment: linux simple http server
>            Reporter: Marc Giger
>
> I see massive memory leaks with the Simple Axis2 HTTP Server.
> Because I can't test it with mod_axis2 I can only report it with the simple http server.
> Here are two valgrind outputs:
> The first one is with a shoot to the sample echo service:
> Started Simple Axis2 HTTP Server ...
> ==19904==
> ==19904== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 45 from
> 1) ==19904== malloc/free: in use at exit: 71,000 bytes in 1,038 blocks.
> ==19904== malloc/free: 15,119 allocs, 14,081 frees, 1,513,871 bytes
> allocated. ==19904== For counts of detected errors, rerun with: -v
> ==19904== searching for pointers to 1,038 not-freed blocks.
> ==19904== checked 8,697,064 bytes.
> ==19904==
> ==19904== LEAK SUMMARY:
> ==19904==    definitely lost: 70,309 bytes in 1,023 blocks.
> ==19904==      possibly lost: 136 bytes in 1 blocks.
> ==19904==    still reachable: 555 bytes in 14 blocks.
> ==19904==         suppressed: 0 bytes in 0 blocks.
> ==19904== Use --leak-check=full to see details of leaked memory.
> This second one is with a service built with the skeleton generator and
> no data binding but just XML in/out:
> Started Simple Axis2 HTTP Server ...
> ==13034==
> ==13034== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 46 from
> 1) ==13034== malloc/free: in use at exit: 200,214 bytes in 1,025 blocks.
> ==13034== malloc/free: 24,826 allocs, 23,801 frees, 2,676,022 bytes
> allocated. ==13034== For counts of detected errors, rerun with: -v
> ==13034== searching for pointers to 1,025 not-freed blocks.
> ==13034== checked 8,697,064 bytes.
> ==13034==
> ==13034== LEAK SUMMARY:
> ==13034==    definitely lost: 199,523 bytes in 1,010 blocks.
> ==13034==      possibly lost: 136 bytes in 1 blocks.
> ==13034==    still reachable: 555 bytes in 14 blocks.
> ==13034==         suppressed: 0 bytes in 0 blocks.
> ==13034== Use --leak-check=full to see details of leaked memory.
> My service function looks like the following:
> axiom_node_t* axis2_skel_TestService_Test (const axis2_env_t *env,
> 					      axiom_node_t* param0 )
> {
> 	return param0;
> }
> In this case i sent a document with about 34KB in size.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

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


[jira] Commented: (AXIS2C-399) memory leaks

Posted by "Samisa Abeysinghe (JIRA)" <ji...@apache.org>.
    [ http://issues.apache.org/jira/browse/AXIS2C-399?page=comments#action_12454785 ] 
            
Samisa Abeysinghe commented on AXIS2C-399:
------------------------------------------

I have applied the patch by Chris given in http://marc.theaimsgroup.com/?l=axis-c-dev&m=116259914508051&w=2 to use APR pools in apache module.

I do not get any segfaults as he has mentioned. However, I see a considerable memory growth, on each request. I am trying to figure out why that is so.

> memory leaks
> ------------
>
>                 Key: AXIS2C-399
>                 URL: http://issues.apache.org/jira/browse/AXIS2C-399
>             Project: Axis2-C
>          Issue Type: Bug
>    Affects Versions: Current (Nightly)
>         Environment: linux simple http server
>            Reporter: Marc Giger
>
> I see massive memory leaks with the Simple Axis2 HTTP Server.
> Because I can't test it with mod_axis2 I can only report it with the simple http server.
> Here are two valgrind outputs:
> The first one is with a shoot to the sample echo service:
> Started Simple Axis2 HTTP Server ...
> ==19904==
> ==19904== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 45 from
> 1) ==19904== malloc/free: in use at exit: 71,000 bytes in 1,038 blocks.
> ==19904== malloc/free: 15,119 allocs, 14,081 frees, 1,513,871 bytes
> allocated. ==19904== For counts of detected errors, rerun with: -v
> ==19904== searching for pointers to 1,038 not-freed blocks.
> ==19904== checked 8,697,064 bytes.
> ==19904==
> ==19904== LEAK SUMMARY:
> ==19904==    definitely lost: 70,309 bytes in 1,023 blocks.
> ==19904==      possibly lost: 136 bytes in 1 blocks.
> ==19904==    still reachable: 555 bytes in 14 blocks.
> ==19904==         suppressed: 0 bytes in 0 blocks.
> ==19904== Use --leak-check=full to see details of leaked memory.
> This second one is with a service built with the skeleton generator and
> no data binding but just XML in/out:
> Started Simple Axis2 HTTP Server ...
> ==13034==
> ==13034== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 46 from
> 1) ==13034== malloc/free: in use at exit: 200,214 bytes in 1,025 blocks.
> ==13034== malloc/free: 24,826 allocs, 23,801 frees, 2,676,022 bytes
> allocated. ==13034== For counts of detected errors, rerun with: -v
> ==13034== searching for pointers to 1,025 not-freed blocks.
> ==13034== checked 8,697,064 bytes.
> ==13034==
> ==13034== LEAK SUMMARY:
> ==13034==    definitely lost: 199,523 bytes in 1,010 blocks.
> ==13034==      possibly lost: 136 bytes in 1 blocks.
> ==13034==    still reachable: 555 bytes in 14 blocks.
> ==13034==         suppressed: 0 bytes in 0 blocks.
> ==13034== Use --leak-check=full to see details of leaked memory.
> My service function looks like the following:
> axiom_node_t* axis2_skel_TestService_Test (const axis2_env_t *env,
> 					      axiom_node_t* param0 )
> {
> 	return param0;
> }
> In this case i sent a document with about 34KB in size.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

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


[jira] Commented: (AXIS2C-399) memory leaks

Posted by "Samisa Abeysinghe (JIRA)" <ji...@apache.org>.
    [ http://issues.apache.org/jira/browse/AXIS2C-399?page=comments#action_12449213 ] 
            
Samisa Abeysinghe commented on AXIS2C-399:
------------------------------------------

If you run valgrind with '--leak-check=full' it would reveal the exact leak locations.
I am working currently to fix the leaks on client side. Next is to look at server side.


> memory leaks
> ------------
>
>                 Key: AXIS2C-399
>                 URL: http://issues.apache.org/jira/browse/AXIS2C-399
>             Project: Axis2-C
>          Issue Type: Bug
>    Affects Versions: Current (Nightly)
>         Environment: linux simple http server
>            Reporter: Marc Giger
>
> I see massive memory leaks with the Simple Axis2 HTTP Server.
> Because I can't test it with mod_axis2 I can only report it with the simple http server.
> Here are two valgrind outputs:
> The first one is with a shoot to the sample echo service:
> Started Simple Axis2 HTTP Server ...
> ==19904==
> ==19904== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 45 from
> 1) ==19904== malloc/free: in use at exit: 71,000 bytes in 1,038 blocks.
> ==19904== malloc/free: 15,119 allocs, 14,081 frees, 1,513,871 bytes
> allocated. ==19904== For counts of detected errors, rerun with: -v
> ==19904== searching for pointers to 1,038 not-freed blocks.
> ==19904== checked 8,697,064 bytes.
> ==19904==
> ==19904== LEAK SUMMARY:
> ==19904==    definitely lost: 70,309 bytes in 1,023 blocks.
> ==19904==      possibly lost: 136 bytes in 1 blocks.
> ==19904==    still reachable: 555 bytes in 14 blocks.
> ==19904==         suppressed: 0 bytes in 0 blocks.
> ==19904== Use --leak-check=full to see details of leaked memory.
> This second one is with a service built with the skeleton generator and
> no data binding but just XML in/out:
> Started Simple Axis2 HTTP Server ...
> ==13034==
> ==13034== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 46 from
> 1) ==13034== malloc/free: in use at exit: 200,214 bytes in 1,025 blocks.
> ==13034== malloc/free: 24,826 allocs, 23,801 frees, 2,676,022 bytes
> allocated. ==13034== For counts of detected errors, rerun with: -v
> ==13034== searching for pointers to 1,025 not-freed blocks.
> ==13034== checked 8,697,064 bytes.
> ==13034==
> ==13034== LEAK SUMMARY:
> ==13034==    definitely lost: 199,523 bytes in 1,010 blocks.
> ==13034==      possibly lost: 136 bytes in 1 blocks.
> ==13034==    still reachable: 555 bytes in 14 blocks.
> ==13034==         suppressed: 0 bytes in 0 blocks.
> ==13034== Use --leak-check=full to see details of leaked memory.
> My service function looks like the following:
> axiom_node_t* axis2_skel_TestService_Test (const axis2_env_t *env,
> 					      axiom_node_t* param0 )
> {
> 	return param0;
> }
> In this case i sent a document with about 34KB in size.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

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