diff options
author | niq <niq@13f79535-47bb-0310-9956-ffa450edef68> | 2005-10-14 14:20:22 +0000 |
---|---|---|
committer | niq <niq@13f79535-47bb-0310-9956-ffa450edef68> | 2005-10-14 14:20:22 +0000 |
commit | 1c4585176a35742d539874a37bf2e900bac9a161 (patch) | |
tree | 9349724cb3cb50c790a3b9220fd95bf8bf155ea0 /dbd/apr_dbd_sqlite3.c | |
parent | babd1c993aada45db3c399cf085348816144b14d (diff) | |
download | libapr-util-1c4585176a35742d539874a37bf2e900bac9a161.tar.gz |
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
Diffstat (limited to 'dbd/apr_dbd_sqlite3.c')
-rw-r--r-- | dbd/apr_dbd_sqlite3.c | 22 |
1 files changed, 7 insertions, 15 deletions
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; } |