[ 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: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
