Fix broken background updates when using sqlite with `enable_search` off (#12215)
Signed-off-by: Sean Quah <seanq@element.io>
This commit is contained in:
parent
90b2327066
commit
8e5706d144
|
@ -0,0 +1 @@
|
||||||
|
Fix a bug introduced in 1.54.0 that broke background updates on sqlite homeservers while search was disabled.
|
|
@ -125,9 +125,6 @@ class SearchBackgroundUpdateStore(SearchWorkerStore):
|
||||||
):
|
):
|
||||||
super().__init__(database, db_conn, hs)
|
super().__init__(database, db_conn, hs)
|
||||||
|
|
||||||
if not hs.config.server.enable_search:
|
|
||||||
return
|
|
||||||
|
|
||||||
self.db_pool.updates.register_background_update_handler(
|
self.db_pool.updates.register_background_update_handler(
|
||||||
self.EVENT_SEARCH_UPDATE_NAME, self._background_reindex_search
|
self.EVENT_SEARCH_UPDATE_NAME, self._background_reindex_search
|
||||||
)
|
)
|
||||||
|
@ -243,9 +240,13 @@ class SearchBackgroundUpdateStore(SearchWorkerStore):
|
||||||
|
|
||||||
return len(event_search_rows)
|
return len(event_search_rows)
|
||||||
|
|
||||||
|
if self.hs.config.server.enable_search:
|
||||||
result = await self.db_pool.runInteraction(
|
result = await self.db_pool.runInteraction(
|
||||||
self.EVENT_SEARCH_UPDATE_NAME, reindex_search_txn
|
self.EVENT_SEARCH_UPDATE_NAME, reindex_search_txn
|
||||||
)
|
)
|
||||||
|
else:
|
||||||
|
# Don't index anything if search is not enabled.
|
||||||
|
result = 0
|
||||||
|
|
||||||
if not result:
|
if not result:
|
||||||
await self.db_pool.updates._end_background_update(
|
await self.db_pool.updates._end_background_update(
|
||||||
|
|
Loading…
Reference in New Issue