Hi,

Sorry for the long email. I have a simple client, see below code, that does a SOAP request to a SOAP service implemented in java. Freeing responseE, reqInfo and stub doesn't free everything but just about 1/3 of the total memory allocated in the request. All documentation points to just freeing these three pointers. BTW the responses are big, typically 60000 rows with about 22 elements in each row. The memory footprint left is huge about 900MB.

 Any suggestions are most welcome.

   axis2_char_t * client_home  = NULL;
axis2_char_t * endpoint_uri = "http://localhost:9090/services/InfoService ";
   axis2_stub_t * stub         = NULL;
   /* ### */
   adb_Info_t             *reqInfo            = NULL;
   adb_InfoRequest_t      *query_in           = NULL;
   /* ### */

   if (axenv == NULL) {
     axenv = axutil_env_create_all(NULL, AXIS2_LOG_LEVEL_ERROR);
   }

/*
//made no difference
    axutil_property_t *property = axutil_property_create(axenv);
    axutil_property_set_scope(property, axenv, AXIS2_SCOPE_REQUEST);
*/

   client_home = AXIS2_GETENV("AXIS2C_HOME");
   if (!client_home)
     client_home = ".";

stub = axis2_stub_create_InfoService(axenv, client_home, endpoint_uri);

   reqInfo  = adb_Info_create(axenv);
   query_in = adb_InfoRequest_create(axenv);

adb_InfoRequestList_t *reqnumlist = adb_InfoRequestList_create(axenv);

   for (int j=0; j< reqn; j++) {
      adb_InfoRequestList_add_reqnum(reqnumlist,axenv,reqnums[j]);
   }

   adb_InfoRequest_set_reqnumlist(query_in,axenv,reqnumlist);

   adb_Info_set_request(reqInfo,axenv,query_in);

adb_InfoResponseE0_t *responseE = axis2_stub_op_InfoService_Info(stub,axenv,reqInfo);

adb_InfoResponse_t* response = adb_InfoResponseE0_get_response(responseE, axenv);

   if (responseE)
     adb_InfoResponseE0_free(responseE,axenv);

   if (reqInfo)
     adb_Info_free(reqInfo,axenv);

   if (stub)
     axis2_stub_free(stub, axenv);

Thanks

Igor


---------------------------------------------------------------------
To unsubscribe, e-mail: c-user-unsubscr...@axis.apache.org
For additional commands, e-mail: c-user-h...@axis.apache.org

Reply via email to