From ce7dc44721241b669ae7b5ba6c401dc528248cf4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Neven=20Jacmenovi=C4=87?= Date: Sun, 11 Jun 2017 23:41:03 +0200 Subject: delayed indexer init (fix for search not working when addons are enabled) --- system/db/init.go | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) (limited to 'system') diff --git a/system/db/init.go b/system/db/init.go index a401a2a..173ca6f 100644 --- a/system/db/init.go +++ b/system/db/init.go @@ -98,6 +98,22 @@ func Init() { }() } +// InitSearchIndex initializes Search Index for search to be functional +// This was moved out of db.Init and put to main(), because addoon checker was initializing db together with +// search indexing initialisation in time when there were no item.Types defined so search index was always empty when using addons. +// We still have no guarentee whatsoever that item.Types is defined +// Should be called from a goroutine after SetContent is successful (SortContent requirement) +func InitSearchIndex() { + for t := range item.Types { + err := search.MapIndex(t) + if err != nil { + log.Fatalln(err) + return + } + SortContent(t) + } +} + // SystemInitComplete checks if there is at least 1 admin user in the db which // would indicate that the system has been configured to the minimum required. func SystemInitComplete() bool { -- cgit v1.2.3