[tracker] libtracker-data: Move SQLite threading mode setting to open call
- From: Jürg Billeter <juergbi src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [tracker] libtracker-data: Move SQLite threading mode setting to open call
- Date: Mon, 16 Aug 2010 15:35:05 +0000 (UTC)
commit c31668087cd6c41e75bd14bb6ea5549f28ff505c
Author: Jürg Billeter <j bitron ch>
Date: Mon Aug 16 12:07:06 2010 +0200
libtracker-data: Move SQLite threading mode setting to open call
src/libtracker-data/tracker-db-interface-sqlite.c | 21 ++++++++++-----------
1 files changed, 10 insertions(+), 11 deletions(-)
---
diff --git a/src/libtracker-data/tracker-db-interface-sqlite.c b/src/libtracker-data/tracker-db-interface-sqlite.c
index 391ed0f..e942c2d 100644
--- a/src/libtracker-data/tracker-db-interface-sqlite.c
+++ b/src/libtracker-data/tracker-db-interface-sqlite.c
@@ -98,7 +98,6 @@ G_DEFINE_TYPE (TrackerDBCursor, tracker_db_cursor, G_TYPE_OBJECT)
void
tracker_db_interface_sqlite_enable_shared_cache (void)
{
- sqlite3_config (SQLITE_CONFIG_MULTITHREAD);
sqlite3_enable_shared_cache (1);
}
@@ -482,20 +481,20 @@ check_interrupt (void *user_data)
static void
open_database (TrackerDBInterface *db_interface)
{
+ int mode;
+
g_assert (db_interface->filename != NULL);
if (!db_interface->ro) {
- if (sqlite3_open (db_interface->filename, &db_interface->db) != SQLITE_OK) {
- g_critical ("Could not open sqlite3 database:'%s'", db_interface->filename);
- } else {
- g_message ("Opened sqlite3 database:'%s'", db_interface->filename);
- }
+ mode = SQLITE_OPEN_READWRITE | SQLITE_OPEN_CREATE;
} else {
- if (sqlite3_open_v2 (db_interface->filename, &db_interface->db, SQLITE_OPEN_READONLY, NULL) != SQLITE_OK) {
- g_critical ("Could not open sqlite3 database:'%s'", db_interface->filename);
- } else {
- g_message ("Opened sqlite3 database:'%s'", db_interface->filename);
- }
+ mode = SQLITE_OPEN_READONLY;
+ }
+
+ if (sqlite3_open_v2 (db_interface->filename, &db_interface->db, mode | SQLITE_OPEN_NOMUTEX, NULL) != SQLITE_OK) {
+ g_critical ("Could not open sqlite3 database:'%s'", db_interface->filename);
+ } else {
+ g_message ("Opened sqlite3 database:'%s'", db_interface->filename);
}
sqlite3_progress_handler (db_interface->db, 100,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]