tracker r1718 - in branches/indexer-split: . src/libtracker-db src/trackerd
- From: mr svn gnome org
- To: svn-commits-list gnome org
- Subject: tracker r1718 - in branches/indexer-split: . src/libtracker-db src/trackerd
- Date: Thu, 19 Jun 2008 21:32:56 +0000 (UTC)
Author: mr
Date: Thu Jun 19 21:32:56 2008
New Revision: 1718
URL: http://svn.gnome.org/viewvc/tracker?rev=1718&view=rev
Log:
* src/libtracker-db/tracker-db-manager.c:
* src/trackerd/tracker-main.c: Again, create the databases when
needed on demand and don't create them when we initialise the
database manager so the trackerd doesn't try to create the
databases. Also, make sure we create the directories we need for
the nfs locking before we do it.
Modified:
branches/indexer-split/ChangeLog
branches/indexer-split/src/libtracker-db/tracker-db-manager.c
branches/indexer-split/src/trackerd/tracker-main.c
Modified: branches/indexer-split/src/libtracker-db/tracker-db-manager.c
==============================================================================
--- branches/indexer-split/src/libtracker-db/tracker-db-manager.c (original)
+++ branches/indexer-split/src/libtracker-db/tracker-db-manager.c Thu Jun 19 21:32:56 2008
@@ -124,8 +124,7 @@
static gboolean db_exec_no_reply (TrackerDBInterface *iface,
const gchar *query,
...);
-static TrackerDBInterface *db_interface_create (TrackerDB db,
- gboolean attach_all);
+static TrackerDBInterface *db_interface_create (TrackerDB db);
static gboolean initialized;
static gboolean attach_all;
@@ -165,7 +164,6 @@
/* Fill absolute path for the database */
dir = location_to_directory (dbs[i].location);
dbs[i].abs_filename = g_build_filename (dir, dbs[i].file, NULL);
- dbs[i].iface = db_interface_create (i, attach_all);
}
g_message ("Setting up all databases completed");
@@ -1636,7 +1634,6 @@
static TrackerDBInterface *
db_interface_get (TrackerDB type,
- gboolean attach_all,
gboolean *create)
{
TrackerDBInterface *iface;
@@ -1690,14 +1687,12 @@
}
static TrackerDBInterface *
-db_interface_get_common (gboolean attach_all)
+db_interface_get_common (void)
{
TrackerDBInterface *iface;
gboolean create;
- iface = db_interface_get (TRACKER_DB_COMMON,
- attach_all,
- &create);
+ iface = db_interface_get (TRACKER_DB_COMMON, &create);
if (create) {
/* Create tables */
@@ -1726,14 +1721,12 @@
}
static TrackerDBInterface *
-db_interface_get_cache (gboolean attach_all)
+db_interface_get_cache (void)
{
TrackerDBInterface *iface;
gboolean create;
- iface = db_interface_get (TRACKER_DB_CACHE,
- attach_all,
- &create);
+ iface = db_interface_get (TRACKER_DB_CACHE, &create);
if (create) {
load_sql_file (iface, "sqlite-cache.sql", NULL);
@@ -1743,14 +1736,12 @@
}
static TrackerDBInterface *
-db_interface_get_file_metadata (gboolean attach_all)
+db_interface_get_file_metadata (void)
{
TrackerDBInterface *iface;
gboolean create;
- iface = db_interface_get (TRACKER_DB_FILE_METADATA,
- attach_all,
- &create);
+ iface = db_interface_get (TRACKER_DB_FILE_METADATA, &create);
if (create) {
load_sql_file (iface, "sqlite-service.sql", NULL);
@@ -1761,14 +1752,12 @@
}
static TrackerDBInterface *
-db_interface_get_file_contents (gboolean attach_all)
+db_interface_get_file_contents (void)
{
TrackerDBInterface *iface;
gboolean create;
- iface = db_interface_get (TRACKER_DB_FILE_CONTENTS,
- attach_all,
- &create);
+ iface = db_interface_get (TRACKER_DB_FILE_CONTENTS, &create);
if (create) {
load_sql_file (iface, "sqlite-contents.sql", NULL);
@@ -1787,14 +1776,12 @@
}
static TrackerDBInterface *
-db_interface_get_email_metadata (gboolean attach_all)
+db_interface_get_email_metadata (void)
{
TrackerDBInterface *iface;
gboolean create;
- iface = db_interface_get (TRACKER_DB_EMAIL_METADATA,
- attach_all,
- &create);
+ iface = db_interface_get (TRACKER_DB_EMAIL_METADATA, &create);
if (create) {
load_sql_file (iface, "sqlite-service.sql", NULL);
@@ -1806,14 +1793,12 @@
}
static TrackerDBInterface *
-db_interface_get_email_contents (gboolean attach_all)
+db_interface_get_email_contents (void)
{
TrackerDBInterface *iface;
gboolean create;
- iface = db_interface_get (TRACKER_DB_EMAIL_CONTENTS,
- attach_all,
- &create);
+ iface = db_interface_get (TRACKER_DB_EMAIL_CONTENTS, &create);
if (create) {
load_sql_file (iface, "sqlite-contents.sql", NULL);
@@ -2018,14 +2003,12 @@
}
static TrackerDBInterface *
-db_interface_get_xesam (gboolean attach_all)
+db_interface_get_xesam (void)
{
TrackerDBInterface *iface;
gboolean create;
- iface = db_interface_get (TRACKER_DB_XESAM,
- attach_all,
- &create);
+ iface = db_interface_get (TRACKER_DB_XESAM, &create);
if (create) {
load_sql_file (iface, "sqlite-xesam.sql", NULL);
@@ -2041,21 +2024,21 @@
db_xesam_create_lookup (iface);
}
- db_exec_no_reply (iface,
- "ATTACH '%s' as 'file-meta'",
- tracker_db_manager_get_file (TRACKER_DB_FILE_METADATA));
-
- db_exec_no_reply (iface,
- "ATTACH '%s' as 'email-meta'",
- tracker_db_manager_get_file (TRACKER_DB_EMAIL_METADATA));
-
- db_exec_no_reply (iface,
- "ATTACH '%s' as 'common'",
- tracker_db_manager_get_file (TRACKER_DB_COMMON));
-
- db_exec_no_reply (iface,
- "ATTACH '%s' as 'cache'",
- tracker_db_manager_get_file (TRACKER_DB_CACHE));
+ /* db_exec_no_reply (iface, */
+ /* "ATTACH '%s' as 'file-meta'", */
+ /* tracker_db_manager_get_file (TRACKER_DB_FILE_METADATA)); */
+
+ /* db_exec_no_reply (iface, */
+ /* "ATTACH '%s' as 'email-meta'", */
+ /* tracker_db_manager_get_file (TRACKER_DB_EMAIL_METADATA)); */
+
+ /* db_exec_no_reply (iface, */
+ /* "ATTACH '%s' as 'common'", */
+ /* tracker_db_manager_get_file (TRACKER_DB_COMMON)); */
+
+ /* db_exec_no_reply (iface, */
+ /* "ATTACH '%s' as 'cache'", */
+ /* tracker_db_manager_get_file (TRACKER_DB_CACHE)); */
/* Load static xesam data */
db_get_static_xesam_data (iface);
@@ -2064,30 +2047,29 @@
}
static TrackerDBInterface *
-db_interface_create (TrackerDB db,
- gboolean attach_all)
+db_interface_create (TrackerDB db)
{
switch (db) {
case TRACKER_DB_COMMON:
- return db_interface_get_common (attach_all);
+ return db_interface_get_common ();
case TRACKER_DB_CACHE:
- return db_interface_get_cache (attach_all);
+ return db_interface_get_cache ();
case TRACKER_DB_FILE_METADATA:
- return db_interface_get_file_metadata (attach_all);
+ return db_interface_get_file_metadata ();
case TRACKER_DB_FILE_CONTENTS:
- return db_interface_get_file_contents (attach_all);
+ return db_interface_get_file_contents ();
case TRACKER_DB_EMAIL_METADATA:
- return db_interface_get_email_metadata (attach_all);
+ return db_interface_get_email_metadata ();
case TRACKER_DB_EMAIL_CONTENTS:
- return db_interface_get_email_contents (attach_all);
+ return db_interface_get_email_contents ();
case TRACKER_DB_XESAM:
- return db_interface_get_xesam (attach_all);
+ return db_interface_get_xesam ();
}
g_critical ("This TrackerDB type:%d->'%s' has no interface set up yet!!",
@@ -2189,6 +2171,9 @@
g_message ("Creating directory:'%s'", db_sys_tmp_dir);
g_mkdir_with_parents (db_sys_tmp_dir, 00755);
+ g_mkdir_with_parents (db_data_dir, 00755);
+ g_mkdir_with_parents (db_user_data_dir, 00755);
+
/* Add prepared queries */
prepared_queries = g_hash_table_new_full (g_str_hash,
g_str_equal,
@@ -2365,6 +2350,10 @@
{
g_return_val_if_fail (initialized != FALSE, NULL);
+ if (!dbs[db].iface) {
+ dbs[db].iface = db_interface_create (db);
+ }
+
return dbs[db].iface;
}
Modified: branches/indexer-split/src/trackerd/tracker-main.c
==============================================================================
--- branches/indexer-split/src/trackerd/tracker-main.c (original)
+++ branches/indexer-split/src/trackerd/tracker-main.c Thu Jun 19 21:32:56 2008
@@ -456,7 +456,13 @@
/* NOTE: We don't create the database directories here, the
* tracker-db-manager does that for us.
*/
-
+
+ g_message ("Checking directory exists:'%s'", user_data_dir);
+ g_mkdir_with_parents (user_data_dir, 00755);
+
+ g_message ("Checking directory exists:'%s'", data_dir);
+ g_mkdir_with_parents (data_dir, 00755);
+
/* Remove an existing one */
if (g_file_test (sys_tmp_dir, G_FILE_TEST_EXISTS)) {
tracker_path_remove (sys_tmp_dir);
@@ -615,10 +621,9 @@
lock_file = get_lock_file ();
- lfp = g_open (lock_file, O_RDWR|O_CREAT, 0640);
+ lfp = g_open (lock_file, O_RDWR | O_CREAT, 0640);
if (lfp < 0) {
- g_free (lock_file);
g_error ("Cannot open or create lockfile:'%s'", lock_file);
}
@@ -815,6 +820,8 @@
tracker_config_set_language (tracker->config, language);
}
+ initialize_directories ();
+
/* Initialize other subsystems */
tracker_log_init (log_filename, tracker_config_get_verbosity (tracker->config));
g_print ("Starting log:\n File:'%s'\n", log_filename);
@@ -829,8 +836,6 @@
sanity_check_option_values ();
- initialize_directories ();
-
tracker_nfs_lock_init (tracker_config_get_nfs_locking (tracker->config));
tracker_db_init ();
tracker_db_manager_init (TRUE, data_dir, user_data_dir, sys_tmp_dir); /* Using TRUE=broken */
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]