From: Mart Raudsepp Date: Fri, 15 Feb 2019 14:13:09 +0000 (+0200) Subject: app-misc/tracker: fix database upgrade from tracker-1 X-Git-Url: http://git.tremily.us/gitweb.cgi?a=commitdiff_plain;h=fe6bac8296ebbf1da3f8bdb366f47ed4229fa163;p=gentoo.git app-misc/tracker: fix database upgrade from tracker-1 Without the added patch tracker-store actually fails to upgrade the database from tracker-1 times to tracker-2 and exits, thus for users that had used tracker-1 already tracker-2 wouldn't actually work at all. This patch fixes it for me at least. This might only be a problem when upgrading from tracker-1 only now, while having sqlite at v3.25 or newer, but this will be the case for only main tree users. Bug: https://bugs.gentoo.org/672308 Package-Manager: Portage-2.3.52, Repoman-2.3.12 Signed-off-by: Mart Raudsepp --- diff --git a/app-misc/tracker/files/2.1.7-upgrade-path-fix.patch b/app-misc/tracker/files/2.1.7-upgrade-path-fix.patch new file mode 100644 index 000000000000..a1fa32738d88 --- /dev/null +++ b/app-misc/tracker/files/2.1.7-upgrade-path-fix.patch @@ -0,0 +1,33 @@ +From d7e31d6940efdb6716689136774a94cfdfd83189 Mon Sep 17 00:00:00 2001 +From: Carlos Garnacho +Date: Mon, 17 Dec 2018 13:34:23 +0100 +Subject: [PATCH] libtracker-data: Update FTS if base tables were altered + +That will issue an update of all tables, so the FTS view might be +affected. This is not caught by ontology change tests, as this +is a situation that can only happen when migrating from 1.x databases +ATM. + +(cherry picked from commit 70758fc059e91936e88d5264b195ac291e995144) +--- + src/libtracker-data/tracker-data-manager.c | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/libtracker-data/tracker-data-manager.c b/src/libtracker-data/tracker-data-manager.c +index f2addd0df..05a96b4dd 100644 +--- a/src/libtracker-data/tracker-data-manager.c ++++ b/src/libtracker-data/tracker-data-manager.c +@@ -3701,8 +3701,8 @@ tracker_data_ontology_import_into_db (TrackerDataManager *manager, + } + + #if HAVE_TRACKER_FTS +- if (in_update) { +- update_fts = tracker_data_manager_fts_changed (manager); ++ if (base_tables_altered || in_update) { ++ update_fts = base_tables_altered | tracker_data_manager_fts_changed (manager); + + if (update_fts) + tracker_db_interface_sqlite_fts_delete_table (iface); +-- +2.17.0 + diff --git a/app-misc/tracker/tracker-2.1.7.ebuild b/app-misc/tracker/tracker-2.1.7-r1.ebuild similarity index 98% rename from app-misc/tracker/tracker-2.1.7.ebuild rename to app-misc/tracker/tracker-2.1.7-r1.ebuild index 24923cfd4090..c9232427a4bc 100644 --- a/app-misc/tracker/tracker-2.1.7.ebuild +++ b/app-misc/tracker/tracker-2.1.7-r1.ebuild @@ -52,6 +52,7 @@ PATCHES=( "${FILESDIR}"/${PV}-prevent-stack-smashing.patch "${FILESDIR}"/${PV}-glib-2.60-compat.patch "${FILESDIR}"/${PV}-fix-library-symlinks.patch + "${FILESDIR}"/${PV}-upgrade-path-fix.patch ) function inotify_enabled() {