Details
-
Bug
-
Status: Open
-
Major
-
Resolution: Unresolved
-
None
-
None
Description
$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 =