When sequence timed out sandesha2/C try to send a create sequence message.
--------------------------------------------------------------------------
Key: SANDESHA2C-51
URL: https://issues.apache.org/jira/browse/SANDESHA2C-51
Project: Sandesha2/C
Issue Type: Bug
Reporter: Damitha Kumarage
The reason is because when sequence is timed out then
SANDESHA2_SEQ_PROP_NEXT_MESSAGE_NUMBER property is also removed from database
as part of sending side data cleaning, which result in system_msg_number = -1
in app_msg_process_process_out_msg() function. Which in tern make msg_number =
1 which prompt sending a create sequence message.
To prevent this I added following code in app_msg_process_process_out_msg()
function.
seq_timeout_bean = sandesha2_seq_property_mgr_retrieve(seq_prop_mgr, env,
internal_seq_id,
SANDESHA2_SEQ_PROP_SEQ_TIMED_OUT);
if(seq_timeout_bean &&
sandesha2_seq_property_bean_get_value(seq_timeout_bean, env)
&& 0 == axutil_strcmp(AXIS2_VALUE_TRUE,
sandesha2_seq_property_bean_get_value(seq_timeout_bean,
env)))
{
axis2_char_t *temp_int_seq_id =
sandesha2_seq_property_bean_get_seq_id(seq_timeout_bean, env);
axis2_char_t *temp_name =
sandesha2_seq_property_bean_get_name(seq_timeout_bean, env);
AXIS2_LOG_DEBUG(env->log, AXIS2_LOG_SI,
"[sandesha2] Removing the sequence property named %s in the
sequence %s", temp_name,
temp_int_seq_id);
sandesha2_seq_property_mgr_remove(seq_prop_mgr, env, temp_int_seq_id,
temp_name);
if(internal_seq_id)
AXIS2_FREE(env->allocator, internal_seq_id);
if(seq_prop_mgr)
sandesha2_seq_property_mgr_free(seq_prop_mgr, env);
if(create_seq_mgr)
sandesha2_create_seq_mgr_free(create_seq_mgr, env);
if(sender_mgr)
sandesha2_sender_mgr_free(sender_mgr, env);
if(storage_mgr)
sandesha2_storage_mgr_free(storage_mgr, env);
/* We should halt the system here. Otherwise application client keep on
sending messages. */
exit(AXIS2_FAILURE);
}
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]