[ 
https://issues.apache.org/jira/browse/AXIS2C-1261?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Robert Lazarski resolved AXIS2C-1261.
-------------------------------------
    Fix Version/s: 2.0.0
                       (was: 1.7.0)
       Resolution: Implemented

  This fix was applied long ago. The current code in 
src/core/clientapi/svc_client.c at line 547 already uses AXIS2_TRUE (blocking 
mode) for the axis2_op_client_execute call in the fire-and-forget function, 
which is the exact change proposed in this issue. Closing as Implemented. 

> When several fire and forget sends are done using svc client it segfaults
> -------------------------------------------------------------------------
>
>                 Key: AXIS2C-1261
>                 URL: https://issues.apache.org/jira/browse/AXIS2C-1261
>             Project: Axis2-C
>          Issue Type: Bug
>          Components: core/clientapi
>            Reporter: Damitha N.M. Kumarage
>            Priority: Major
>             Fix For: 2.0.0
>
>
> $Subject happens because in operation client the sending is done using 
> separate thread. Before the first request completes it could happen that the 
> second request free the operation client that is used to send the first 
> message.
> When operation client execute is called from services clients fire and forget 
> function it set send blokcing to true. When I fixed this to false the above 
> segfaut and the problem causing it dissapear. This is because no more thread 
> are spawned and sends are done sequentially.
> Following the diff of my simple fix. If there is no objection I will commit 
> the change
> Index: src/core/clientapi/svc_client.c
> ===================================================================
> --- src/core/clientapi/svc_client.c (revision 693316)
> +++ src/core/clientapi/svc_client.c (working copy)
> @@ -663,7 +663,7 @@
>      }
>      axis2_op_client_add_out_msg_ctx(svc_client->op_client, env, msg_ctx);
> -    axis2_op_client_execute(svc_client->op_client, env, AXIS2_FALSE);
> +    axis2_op_client_execute(svc_client->op_client, env, AXIS2_TRUE);
>      axis2_svc_client_set_http_info(svc_client, env, msg_ctx);
>      svc_client->auth_failed = axis2_msg_ctx_get_auth_failed(msg_ctx, env);
>      svc_client->required_auth_is_http =



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

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

Reply via email to