From 1c4585176a35742d539874a37bf2e900bac9a161 Mon Sep 17 00:00:00 2001 From: niq Date: Fri, 14 Oct 2005 14:20:22 +0000 Subject: Update sqlite3 driver to use apr_dbd mutex rather than create its own git-svn-id: http://svn.apache.org/repos/asf/apr/apr-util/trunk@321132 13f79535-47bb-0310-9956-ffa450edef68 --- dbd/apr_dbd_sqlite3.c | 22 +++++++--------------- 1 file changed, 7 insertions(+), 15 deletions(-) (limited to 'dbd/apr_dbd_sqlite3.c') diff --git a/dbd/apr_dbd_sqlite3.c b/dbd/apr_dbd_sqlite3.c index 6bb7ca4b..b3ec966e 100644 --- a/dbd/apr_dbd_sqlite3.c +++ b/dbd/apr_dbd_sqlite3.c @@ -39,7 +39,6 @@ struct apr_dbd_transaction_t { struct apr_dbd_t { sqlite3 *conn; apr_dbd_transaction_t *trans; - apr_thread_mutex_t *mutex; apr_pool_t *pool; }; @@ -92,11 +91,11 @@ static int dbd_sqlite3_select(apr_pool_t * pool, apr_dbd_t * sql, apr_dbd_result return sql->trans->errnum; } - apr_thread_mutex_lock(sql->mutex); + apr_dbd_mutex_lock(); ret = sqlite3_prepare(sql->conn, query, strlen(query), &stmt, &tail); if (!dbd_sqlite3_is_success(ret)) { - apr_thread_mutex_unlock(sql->mutex); + apr_dbd_mutex_unlock(); return ret; } else { int column_count; @@ -115,9 +114,9 @@ static int dbd_sqlite3_select(apr_pool_t * pool, apr_dbd_t * sql, apr_dbd_result if (retry_count++ > MAX_RETRY_COUNT) { ret = SQLITE_ERROR; } else { - apr_thread_mutex_unlock(sql->mutex); + apr_dbd_mutex_unlock(); apr_sleep(MAX_RETRY_SLEEP); - apr_thread_mutex_lock(sql->mutex); + apr_dbd_mutex_lock(); } } else if (ret == SQLITE_ROW) { int length; @@ -170,7 +169,7 @@ static int dbd_sqlite3_select(apr_pool_t * pool, apr_dbd_t * sql, apr_dbd_result } while (ret == SQLITE_ROW || ret == SQLITE_BUSY); } ret = sqlite3_finalize(stmt); - apr_thread_mutex_unlock(sql->mutex); + apr_dbd_mutex_unlock(); if (sql->trans) { sql->trans->errnum = ret; @@ -233,7 +232,7 @@ static int dbd_sqlite3_query(apr_dbd_t *sql, int *nrows, const char *query) } length = strlen(query); - apr_thread_mutex_lock(sql->mutex); + apr_dbd_mutex_lock(); do { ret = sqlite3_prepare(sql->conn, query, length, &stmt, &tail); @@ -251,7 +250,7 @@ static int dbd_sqlite3_query(apr_dbd_t *sql, int *nrows, const char *query) if (dbd_sqlite3_is_success(ret)) { ret = 0; } - apr_thread_mutex_unlock(sql->mutex); + apr_dbd_mutex_unlock(); if (sql->trans) { sql->trans->errnum = ret; } @@ -357,12 +356,6 @@ static apr_dbd_t *dbd_sqlite3_open(apr_pool_t *pool, const char *params) sql->conn = conn; sql->pool = pool; sql->trans = NULL; - /* Create a mutex */ - res = apr_thread_mutex_create(&sql->mutex, APR_THREAD_MUTEX_DEFAULT, - pool); - if (res != APR_SUCCESS) { - return NULL; - } return sql; } @@ -370,7 +363,6 @@ static apr_dbd_t *dbd_sqlite3_open(apr_pool_t *pool, const char *params) static apr_status_t dbd_sqlite3_close(apr_dbd_t *handle) { sqlite3_close(handle->conn); - apr_thread_mutex_destroy(handle->mutex); return APR_SUCCESS; } -- cgit v1.2.1