Fix FTS crash with SQLite 3.34.0 (#1907021)

This commit is contained in:
David King 2020-12-23 13:39:03 +00:00
parent 719b2c8f1b
commit 30a9c72390
2 changed files with 32 additions and 1 deletions

View File

@ -0,0 +1,26 @@
diff --git a/src/libtracker-data/tracker-data-update.c b/src/libtracker-data/tracker-data-update.c
index e2f46685e..19cae25f9 100644
--- a/src/libtracker-data/tracker-data-update.c
+++ b/src/libtracker-data/tracker-data-update.c
@@ -2244,6 +2244,7 @@ cache_delete_resource_type_full (TrackerData *data,
g_hash_table_size (data->resource_buffer->tables) == 0) {
#if HAVE_TRACKER_FTS
tracker_db_interface_sqlite_fts_delete_id (iface, data->resource_buffer->id);
+ data->resource_buffer->fts_updated = TRUE;
#endif
/* skip subclass query when deleting whole resource
to improve performance */
diff --git a/src/libtracker-data/tracker-db-interface-sqlite.c b/src/libtracker-data/tracker-db-interface-sqlite.c
index da88080ed..cdeb960e7 100644
--- a/src/libtracker-data/tracker-db-interface-sqlite.c
+++ b/src/libtracker-data/tracker-db-interface-sqlite.c
@@ -1770,7 +1770,8 @@ tracker_db_interface_sqlite_fts_create_delete_all_query (TrackerDBInterface *db_
g_string_append_printf (insert_str,
"INSERT INTO fts5 (fts5, rowid %s) "
"SELECT 'delete', rowid %s FROM fts_view "
- "WHERE rowid = ?",
+ "WHERE rowid = ? AND COALESCE(NULL %s) IS NOT NULL",
+ db_interface->fts_properties,
db_interface->fts_properties,
db_interface->fts_properties);
return g_string_free (insert_str, FALSE);

View File

@ -8,12 +8,14 @@
Name: tracker
Version: 2.3.6
Release: 1%{?dist}
Release: 2%{?dist}
Summary: Desktop-neutral metadata database and search tool
License: GPLv2+
URL: https://wiki.gnome.org/Projects/Tracker
Source0: https://download.gnome.org/sources/%{name}/2.3/%{name}-%{version}.tar.xz
# https://bugzilla.redhat.com/show_bug.cgi?id=1907021
Patch0: tracker-2.3.6-fix-fts-sqlite-3.34.0.patch
BuildRequires: gettext
BuildRequires: graphviz
@ -196,6 +198,9 @@ rm -rf $RPM_BUILD_ROOT%{_libdir}/tracker-2.0/trackertestutils/
%changelog
* Wed Dec 23 2020 David King <amigadave@amigadave.com> - 2.3.6-2
- Fix FTS crash with SQLite 3.34.0 (#1907021)
* Mon Sep 07 2020 Kalev Lember <klember@redhat.com> - 2.3.6-1
- Update to 2.3.6