axis-c-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Alex Mantaut <alex.mant...@intraway.com>
Subject Crash when reusing svc_client with non-blocking call
Date Fri, 13 Jan 2012 20:18:22 GMT
Hi all,
      I'm performing a stress test on AXIS2C, sending multiple
Asynchronous request from a client to a service.

 I'm using an instance of svc_client to send multiple non_blocking requests
to a service, but after the request I lock the thread to wait for the
callback on complete to finish... The callback unlocks the mutex, wich
unlocks the 1st thread.

The code is similar to this:

mutex.lock();
for(i=0;i<10;i++)
{
       axis2_svc_client_send_receive_
non_blocking (svc_client_,
env,                                               payload, callback);
        mutex.lock();
}
mutex.unlock();


echo_callback_on_complete(struct axis2_callback* callback,
                         const axutil_env_t*      env)
{
[does a bunch of stuff]
        mutex.unlock();
         return status;
 }

The thing is when it tries to send a second request it fails with
segmentation fault... After some debugging, I found that some of the
callback resources weren't completly deallcated when finishing
callback_on_complete(), wich somehow makes the next send request cause a
segmentation fault...

Looking in google I found this
https://issues.apache.org/jira/browse/AXIS2C-1551, and it looks like my
issue... Somebody did fix this? is there a workaround I could use to know
when the callback resources have been released?


-- 
-- 
Mantaut Alex
Intraway Corp.

+54 (11) 6040-4000
MSN: alex.mantaut@intraway.com <angeles.galli@intraway.com>

Visit our website at http://www.intraway.com
Proud to be an ISO 9001:2008 certified company

Mime
View raw message