If storage manager is not created handle it
diff --git a/src/msgprocessors/ack_msg_processor.c b/src/msgprocessors/ack_msg_processor.c
index 84904f9..3e0f77f 100644
--- a/src/msgprocessors/ack_msg_processor.c
+++ b/src/msgprocessors/ack_msg_processor.c
@@ -195,6 +195,13 @@
dbname = sandesha2_util_get_dbname(env, conf_ctx);
storage_mgr = sandesha2_utils_get_storage_mgr(env, dbname);
+ if(!storage_mgr)
+ {
+ AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "[sandesha2] Could not create storage manager.");
+ AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_COULD_NOT_CREATE_STORAGE_MANAGER,
+ AXIS2_FAILURE);
+ return AXIS2_FAILURE;
+ }
seq_prop_mgr = sandesha2_permanent_seq_property_mgr_create(env, dbname);
create_seq_mgr = sandesha2_permanent_create_seq_mgr_create(env, dbname);
sender_mgr = sandesha2_permanent_sender_mgr_create(env, dbname);
diff --git a/src/msgprocessors/ack_req_msg_processor.c b/src/msgprocessors/ack_req_msg_processor.c
index cac0741..efaab45 100644
--- a/src/msgprocessors/ack_req_msg_processor.c
+++ b/src/msgprocessors/ack_req_msg_processor.c
@@ -182,6 +182,13 @@
conf_ctx = axis2_msg_ctx_get_conf_ctx(msg_ctx, env);
dbname = sandesha2_util_get_dbname(env, conf_ctx);
storage_mgr = sandesha2_utils_get_storage_mgr(env, dbname);
+ if(!storage_mgr)
+ {
+ AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "[sandesha2] Could not create storage manager.");
+ AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_COULD_NOT_CREATE_STORAGE_MANAGER,
+ AXIS2_FAILURE);
+ return AXIS2_FAILURE;
+ }
seq_prop_mgr = sandesha2_permanent_seq_property_mgr_create(env, dbname);
acks_to_bean = sandesha2_seq_property_mgr_retrieve(seq_prop_mgr, env, seq_id,
SANDESHA2_SEQ_PROP_ACKS_TO_EPR);
diff --git a/src/msgprocessors/app_msg_processor.c b/src/msgprocessors/app_msg_processor.c
index bb12316..0b25175 100644
--- a/src/msgprocessors/app_msg_processor.c
+++ b/src/msgprocessors/app_msg_processor.c
@@ -409,6 +409,13 @@
conf_ctx = axis2_msg_ctx_get_conf_ctx(app_msg_ctx, env);
dbname = sandesha2_util_get_dbname(env, conf_ctx);
storage_mgr = sandesha2_utils_get_storage_mgr(env, dbname);
+ if(!storage_mgr)
+ {
+ AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "[sandesha2] Could not create storage manager.");
+ AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_COULD_NOT_CREATE_STORAGE_MANAGER,
+ AXIS2_FAILURE);
+ return AXIS2_FAILURE;
+ }
fault_ctx = sandesha2_fault_mgr_check_for_last_msg_num_exceeded(env, rm_msg_ctx, seq_prop_mgr);
if(fault_ctx)
{
@@ -1111,6 +1118,13 @@
dbname = sandesha2_util_get_dbname(env, conf_ctx);
storage_mgr = sandesha2_utils_get_storage_mgr(env, dbname);
+ if(!storage_mgr)
+ {
+ AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "[sandesha2] Could not create storage manager.");
+ AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_COULD_NOT_CREATE_STORAGE_MANAGER,
+ AXIS2_FAILURE);
+ return AXIS2_FAILURE;
+ }
seq_prop_mgr = sandesha2_permanent_seq_property_mgr_create(env, dbname);
if(!seq_prop_mgr)
{
@@ -2532,6 +2546,13 @@
dbname = sandesha2_util_get_dbname(env, conf_ctx);
storage_mgr = sandesha2_utils_get_storage_mgr(env, dbname);
+ if(!storage_mgr)
+ {
+ AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "[sandesha2] Could not create storage manager.");
+ AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_COULD_NOT_CREATE_STORAGE_MANAGER,
+ AXIS2_FAILURE);
+ return NULL;
+ }
seq_prop_mgr = sandesha2_permanent_seq_property_mgr_create(env, dbname);
create_seq_mgr = sandesha2_permanent_create_seq_mgr_create(env, dbname);
sender_mgr = sandesha2_permanent_sender_mgr_create(env, dbname);
@@ -3503,6 +3524,13 @@
retrans_interval = args->retrans_interval;
dbname = sandesha2_util_get_dbname(env, conf_ctx);
storage_mgr = sandesha2_utils_get_storage_mgr(env, dbname);
+ if(!storage_mgr)
+ {
+ AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "[sandesha2] Could not create storage manager.");
+ AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_COULD_NOT_CREATE_STORAGE_MANAGER,
+ AXIS2_FAILURE);
+ return NULL;
+ }
seq_prop_mgr = sandesha2_permanent_seq_property_mgr_create(env, dbname);
create_seq_mgr = sandesha2_permanent_create_seq_mgr_create(env, dbname);
sender_mgr = sandesha2_permanent_sender_mgr_create(env, dbname);
diff --git a/src/msgprocessors/close_seq_msg_processor.c b/src/msgprocessors/close_seq_msg_processor.c
index 2956175..547e745 100644
--- a/src/msgprocessors/close_seq_msg_processor.c
+++ b/src/msgprocessors/close_seq_msg_processor.c
@@ -387,6 +387,13 @@
dbname = sandesha2_util_get_dbname(env, conf_ctx);
storage_mgr = sandesha2_utils_get_storage_mgr(env, dbname);
+ if(!storage_mgr)
+ {
+ AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "[sandesha2] Could not create storage manager.");
+ AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_COULD_NOT_CREATE_STORAGE_MANAGER,
+ AXIS2_FAILURE);
+ return AXIS2_FAILURE;
+ }
seq_prop_mgr = sandesha2_permanent_seq_property_mgr_create(env, dbname);
create_seq_mgr = sandesha2_permanent_create_seq_mgr_create(env, dbname);
sender_mgr = sandesha2_permanent_sender_mgr_create(env, dbname);
diff --git a/src/msgprocessors/close_seq_res_msg_processor.c b/src/msgprocessors/close_seq_res_msg_processor.c
index f9e5f91..ccf3173 100644
--- a/src/msgprocessors/close_seq_res_msg_processor.c
+++ b/src/msgprocessors/close_seq_res_msg_processor.c
@@ -157,6 +157,13 @@
conf_ctx = axis2_msg_ctx_get_conf_ctx(msg_ctx, env);
dbname = sandesha2_util_get_dbname(env, conf_ctx);
storage_mgr = sandesha2_utils_get_storage_mgr(env, dbname);
+ if(!storage_mgr)
+ {
+ AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "[sandesha2] Could not create storage manager.");
+ AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_COULD_NOT_CREATE_STORAGE_MANAGER,
+ AXIS2_FAILURE);
+ return AXIS2_FAILURE;
+ }
seq_prop_mgr = sandesha2_permanent_seq_property_mgr_create(env, dbname);
create_seq_mgr = sandesha2_permanent_create_seq_mgr_create(env, dbname);
sender_mgr =sandesha2_permanent_sender_mgr_create(env, dbname);
diff --git a/src/msgprocessors/create_seq_res_msg_processor.c b/src/msgprocessors/create_seq_res_msg_processor.c
index 86be285..8b1a81c 100644
--- a/src/msgprocessors/create_seq_res_msg_processor.c
+++ b/src/msgprocessors/create_seq_res_msg_processor.c
@@ -172,6 +172,13 @@
dbname = sandesha2_util_get_dbname(env, conf_ctx);
storage_mgr = sandesha2_utils_get_storage_mgr(env, dbname);
+ if(!storage_mgr)
+ {
+ AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "[sandesha2] Could not create storage manager.");
+ AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_COULD_NOT_CREATE_STORAGE_MANAGER,
+ AXIS2_FAILURE);
+ return AXIS2_FAILURE;
+ }
csr_part = sandesha2_msg_ctx_get_create_seq_res(rm_msg_ctx, env);
if(!csr_part)
diff --git a/src/msgprocessors/make_connection_msg_processor.c b/src/msgprocessors/make_connection_msg_processor.c
index 66fe534..aad3204 100644
--- a/src/msgprocessors/make_connection_msg_processor.c
+++ b/src/msgprocessors/make_connection_msg_processor.c
@@ -287,6 +287,13 @@
}
storage_mgr = sandesha2_utils_get_storage_mgr(env, dbname);
+ if(!storage_mgr)
+ {
+ AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "[sandesha2] Could not create storage manager.");
+ AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_COULD_NOT_CREATE_STORAGE_MANAGER,
+ AXIS2_FAILURE);
+ return AXIS2_FAILURE;
+ }
if(storage_mgr)
{
seq_prop_mgr = sandesha2_permanent_seq_property_mgr_create(env, dbname);
diff --git a/src/msgprocessors/terminate_seq_msg_processor.c b/src/msgprocessors/terminate_seq_msg_processor.c
index f104efb..bb2cd36 100644
--- a/src/msgprocessors/terminate_seq_msg_processor.c
+++ b/src/msgprocessors/terminate_seq_msg_processor.c
@@ -221,6 +221,13 @@
conf_ctx = axis2_msg_ctx_get_conf_ctx(terminate_msg_ctx, env);
dbname = sandesha2_util_get_dbname(env, conf_ctx);
storage_mgr = sandesha2_utils_get_storage_mgr(env, dbname);
+ if(!storage_mgr)
+ {
+ AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "[sandesha2] Could not create storage manager.");
+ AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_COULD_NOT_CREATE_STORAGE_MANAGER,
+ AXIS2_FAILURE);
+ return AXIS2_FAILURE;
+ }
seq_prop_mgr = sandesha2_permanent_seq_property_mgr_create(env, dbname);
create_seq_mgr = sandesha2_permanent_create_seq_mgr_create(env, dbname);
sender_mgr = sandesha2_permanent_sender_mgr_create(env, dbname);
@@ -757,6 +764,13 @@
dbname = sandesha2_util_get_dbname(env, conf_ctx);
storage_mgr = sandesha2_utils_get_storage_mgr(env, dbname);
+ if(!storage_mgr)
+ {
+ AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "[sandesha2] Could not create storage manager.");
+ AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_COULD_NOT_CREATE_STORAGE_MANAGER,
+ AXIS2_FAILURE);
+ return AXIS2_FAILURE;
+ }
seq_prop_mgr = sandesha2_permanent_seq_property_mgr_create(env, dbname);
create_seq_mgr = sandesha2_permanent_create_seq_mgr_create(env, dbname);
sender_mgr = sandesha2_permanent_sender_mgr_create(env, dbname);
diff --git a/src/msgprocessors/terminate_seq_res_msg_processor.c b/src/msgprocessors/terminate_seq_res_msg_processor.c
index 144b146..04f6a0a 100644
--- a/src/msgprocessors/terminate_seq_res_msg_processor.c
+++ b/src/msgprocessors/terminate_seq_res_msg_processor.c
@@ -162,6 +162,13 @@
conf_ctx = axis2_msg_ctx_get_conf_ctx(msg_ctx, env);
dbname = sandesha2_util_get_dbname(env, conf_ctx);
storage_mgr = sandesha2_utils_get_storage_mgr(env, dbname);
+ if(!storage_mgr)
+ {
+ AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "[sandesha2] Could not create storage manager.");
+ AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_COULD_NOT_CREATE_STORAGE_MANAGER,
+ AXIS2_FAILURE);
+ return AXIS2_FAILURE;
+ }
seq_prop_mgr = sandesha2_permanent_seq_property_mgr_create(env, dbname);
create_seq_mgr = sandesha2_permanent_create_seq_mgr_create(env, dbname);
sender_mgr =sandesha2_permanent_sender_mgr_create(env, dbname);
diff --git a/src/polling/polling_mgr.c b/src/polling/polling_mgr.c
index 9b6c8c8..5e1f893 100644
--- a/src/polling/polling_mgr.c
+++ b/src/polling/polling_mgr.c
@@ -256,6 +256,13 @@
dbname = sandesha2_util_get_dbname(env, conf_ctx);
storage_mgr = sandesha2_utils_get_storage_mgr(env, dbname);
+ if(!storage_mgr)
+ {
+ AXIS2_LOG_ERROR(env->log, AXIS2_LOG_SI, "[sandesha2] Could not create storage manager.");
+ AXIS2_ERROR_SET(env->error, SANDESHA2_ERROR_COULD_NOT_CREATE_STORAGE_MANAGER,
+ AXIS2_FAILURE);
+ return NULL;
+ }
seq_prop_mgr = sandesha2_permanent_seq_property_mgr_create(env, dbname);
sender_mgr = sandesha2_permanent_sender_mgr_create(env, dbname);
next_msg_mgr = sandesha2_permanent_next_msg_mgr_create(env, dbname);
diff --git a/src/util/error.c b/src/util/error.c
index c751aa1..9d1d936 100644
--- a/src/util/error.c
+++ b/src/util/error.c
@@ -176,6 +176,8 @@
"Cannot find a operation for generated message";
axutil_error_messages[SANDESHA2_ERROR_INVALID_PERSISTENCE_PROPERTY_STRING]=
"Invalid persistence property string";
+ axutil_error_messages[SANDESHA2_ERROR_COULD_NOT_CREATE_STORAGE_MANAGER]=
+ "Could not create storage manager";
return AXIS2_SUCCESS;
}