static pthread_mutex_t conn_mutex = PTHREAD_MUTEX_INITIALIZER;
static pthread_mutex_t sockfd_mutex = PTHREAD_MUTEX_INITIALIZER;
-static pthread_mutex_t trans_mutex = PTHREAD_MUTEX_INITIALIZER;
static pthread_mutex_t ipc_mutex = PTHREAD_MUTEX_INITIALIZER;
static pthread_mutex_t ipc_pubsub_mutex = PTHREAD_MUTEX_INITIALIZER;
static pthread_mutex_t access_control_mutex = PTHREAD_MUTEX_INITIALIZER;
case CTS_MUTEX_SOCKET_FD:
ret_val = &sockfd_mutex;
break;
- case CTS_MUTEX_TRANSACTION:
- ret_val = &trans_mutex;
- break;
case CTS_MUTEX_PIMS_IPC_CALL:
ret_val = &ipc_mutex;
break;
{
int ret = -1, progress;
-#ifndef _CONTACTS_IPC_SERVER
- ctsvc_mutex_lock(CTS_MUTEX_TRANSACTION);
-#endif
if (transaction_count <= 0) {
ret = ctsvc_query_exec("BEGIN IMMEDIATE TRANSACTION");
progress = 100000;
}
if(CONTACTS_ERROR_NONE != ret) {
CTS_ERR("ctsvc_query_exec() Failed(%d)", ret);
-#ifndef _CONTACTS_IPC_SERVER
- ctsvc_mutex_unlock(CTS_MUTEX_TRANSACTION);
-#endif
return ret;
}
}
transaction_count++;
INFO("transaction_count : %d.", transaction_count);
-#ifndef _CONTACTS_IPC_SERVER
- ctsvc_mutex_unlock(CTS_MUTEX_TRANSACTION);
-#endif
return CONTACTS_ERROR_NONE;
}
int ret = -1, progress;
char query[CTS_SQL_MIN_LEN] = {0};
-#ifndef _CONTACTS_IPC_SERVER
- ctsvc_mutex_lock(CTS_MUTEX_TRANSACTION);
-#endif
-
transaction_count--;
INFO("%s, transaction_count : %d", is_success?"True": "False", transaction_count);
if (0 != transaction_count) {
CTS_DBG("contact transaction_count : %d.", transaction_count);
-#ifndef _CONTACTS_IPC_SERVER
- ctsvc_mutex_unlock(CTS_MUTEX_TRANSACTION);
-#endif
return CONTACTS_ERROR_NONE;
}
#endif
ret = ctsvc_query_exec("ROLLBACK TRANSACTION");
-#ifndef _CONTACTS_IPC_SERVER
- ctsvc_mutex_unlock(CTS_MUTEX_TRANSACTION);
-#endif
return CONTACTS_ERROR_NONE;
}
#endif
tmp_ret = ctsvc_query_exec("ROLLBACK TRANSACTION");
WARN_IF(CONTACTS_ERROR_NONE != tmp_ret, "ctsvc_query_exec(ROLLBACK) Failed(%d)", tmp_ret);
-#ifndef _CONTACTS_IPC_SERVER
- ctsvc_mutex_unlock(CTS_MUTEX_TRANSACTION);
-#endif
return ret;
}
ctsvc_change_subject_publish_changed_info();
#endif
-#ifndef _CONTACTS_IPC_SERVER
- ctsvc_mutex_unlock(CTS_MUTEX_TRANSACTION);
-#endif
-
CTS_DBG("Transaction shut down! : (%d)\n", transaction_ver);
return CONTACTS_ERROR_NONE;