Author: damitha
Date: Wed May 21 10:56:07 2008
New Revision: 658789

URL: http://svn.apache.org/viewvc?rev=658789&view=rev
Log:
Fixng SANDESHA2C-51

Modified:
    webservices/sandesha/trunk/c/config/module.xml
    webservices/sandesha/trunk/c/src/msgprocessors/app_msg_processor.c
    webservices/sandesha/trunk/c/src/util/terminate_mgr.c
    webservices/sandesha/trunk/c/src/workers/sender_worker.c

Modified: webservices/sandesha/trunk/c/config/module.xml
URL: 
http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/config/module.xml?rev=658789&r1=658788&r2=658789&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/config/module.xml (original)
+++ webservices/sandesha/trunk/c/config/module.xml Wed May 21 10:56:07 2008
@@ -74,11 +74,11 @@
    <!-- General parameters -->
     <parameter name="ExponentialBackoff" locked="false">AXIS2_FALSE</parameter>
     <parameter name="RetransmissionInterval" 
locked="false">4</parameter><!--In seconds-->
-    <parameter name="InactivityTimeout" locked="false">16</parameter><!--In 
seconds-->
+    <parameter name="InactivityTimeout" locked="false">64</parameter><!--In 
seconds-->
     <parameter name="StorageManager" locked="false">persistent</parameter>
     <parameter name="InvokeInOrder" locked="false">AXIS2_FALSE</parameter>
     <parameter name="MessageTypesToDrop" locked="false">none</parameter>
-    <parameter name="MaxRetransCount" locked="false">10</parameter>
+    <parameter name="MaxRetransCount" locked="false">100</parameter>
     <parameter name="SenderSleepTime" locked="false">100000</parameter><!--In 
micro seconds-->
     <parameter name="InvokerSleepTime" locked="false">1</parameter>
     <parameter name="PollingWaitTime" locked="false">2</parameter>

Modified: webservices/sandesha/trunk/c/src/msgprocessors/app_msg_processor.c
URL: 
http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/msgprocessors/app_msg_processor.c?rev=658789&r1=658788&r2=658789&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/msgprocessors/app_msg_processor.c 
(original)
+++ webservices/sandesha/trunk/c/src/msgprocessors/app_msg_processor.c Wed May 
21 10:56:07 2008
@@ -856,6 +856,7 @@
     long msg_number = -1;
     axis2_char_t *dummy_msg_str = NULL;
     axis2_bool_t dummy_msg = AXIS2_FALSE;
+    axis2_bool_t seq_timed_out = AXIS2_FALSE;
     sandesha2_seq_property_bean_t *res_highest_msg_bean = NULL;
     axis2_char_t msg_number_str[32];
     axis2_bool_t send_create_seq = AXIS2_FALSE;
@@ -869,6 +870,7 @@
     axis2_msg_ctx_t *req_msg_ctx = NULL;
     axis2_relates_to_t *relates_to = NULL;
     axis2_char_t *dbname = NULL;
+    sandesha2_seq_property_bean_t *seq_timeout_bean = NULL;
     
     AXIS2_LOG_TRACE(env->log, AXIS2_LOG_SI,  
         "[sandesha2]Entry:sandesha2_app_msg_processor_process_out_msg");
@@ -894,6 +896,7 @@
     }
     create_seq_mgr = sandesha2_permanent_create_seq_mgr_create(env, dbname);
     sender_mgr = sandesha2_permanent_sender_mgr_create(env, dbname);
+
     is_svr_side = axis2_msg_ctx_get_server_side(msg_ctx, env);
     
     to_epr = axis2_msg_ctx_get_to(msg_ctx, env);
@@ -1032,6 +1035,34 @@
                 AXIS2_FREE(env->allocator, spec_ver);
         }
     }
+
+    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);
+    }
+
     property = axis2_msg_ctx_get_property(msg_ctx, env, 
         SANDESHA2_CLIENT_MESSAGE_NUMBER);
     if(property)
@@ -1076,6 +1107,7 @@
             sandesha2_storage_mgr_free(storage_mgr, env);
         return AXIS2_FAILURE;
     }
+
     if(msg_num_lng > 0)
         msg_number = msg_num_lng;
     else if(system_msg_num > 0)

Modified: webservices/sandesha/trunk/c/src/util/terminate_mgr.c
URL: 
http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/util/terminate_mgr.c?rev=658789&r1=658788&r2=658789&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/util/terminate_mgr.c (original)
+++ webservices/sandesha/trunk/c/src/util/terminate_mgr.c Wed May 21 10:56:07 
2008
@@ -496,9 +496,9 @@
     seq_term_bean = sandesha2_seq_property_bean_create_with_data(env, seq_id,
         SANDESHA2_SEQ_PROP_SEQ_TIMED_OUT, AXIS2_VALUE_TRUE);
     
-    sandesha2_seq_property_mgr_insert(seq_prop_mgr, env, seq_term_bean);
     sandesha2_terminate_mgr_clean_sending_side_data(env, conf_ctx, seq_id,
         svr_side, storage_mgr, seq_prop_mgr, create_seq_mgr, sender_mgr);
+    sandesha2_seq_property_mgr_insert(seq_prop_mgr, env, seq_term_bean);
     AXIS2_LOG_TRACE(env->log, AXIS2_LOG_SI, 
         "[sandesha2]Exit:sandesha2_terminate_mgr_time_out_sending_side_seq");
     return AXIS2_SUCCESS;
@@ -598,7 +598,6 @@
             create_seq_bean = axutil_array_list_get(found_list, env, i);
             key = sandesha2_create_seq_bean_get_ref_msg_store_key(
                 create_seq_bean, env);
-            AXIS2_LOG_DEBUG(env->log, AXIS2_LOG_SI, "[sandesha2] dam_key:%s", 
key);
             if(key) 
                sandesha2_storage_mgr_remove_msg_ctx(storage_mgr, env, key, 
                    conf_ctx, -1);

Modified: webservices/sandesha/trunk/c/src/workers/sender_worker.c
URL: 
http://svn.apache.org/viewvc/webservices/sandesha/trunk/c/src/workers/sender_worker.c?rev=658789&r1=658788&r2=658789&view=diff
==============================================================================
--- webservices/sandesha/trunk/c/src/workers/sender_worker.c (original)
+++ webservices/sandesha/trunk/c/src/workers/sender_worker.c Wed May 21 
10:56:07 2008
@@ -327,7 +327,6 @@
     {
         /* This is neccessary to avoid a double free */
         axis2_msg_ctx_set_property(msg_ctx, env, AXIS2_TRANSPORT_IN, NULL);
-        AXIS2_LOG_DEBUG(env->log, AXIS2_LOG_SI, "dam_msg_id:%s", msg_id);
         if(AXIS2_TRANSPORT_SENDER_INVOKE(transport_sender, env, msg_ctx))
                {
                successfully_sent = AXIS2_TRUE;



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to