diff --git a/cmd/server.ts b/cmd/server.ts index 545b26ff..3e635ca4 100644 --- a/cmd/server.ts +++ b/cmd/server.ts @@ -100,10 +100,10 @@ To allow outside connections, pass -L 0.0.0.0 as a flag, and put a TLS terminato system = serverSystem.system; if (options.reindex) { console.log("Reindexing space (requested via --reindex flag)"); - await serverSystem.system.loadedPlugs.get("index")!.invoke( + serverSystem.system.loadedPlugs.get("index")!.invoke( "reindexSpace", [], - ); + ).catch(console.error); } } diff --git a/plugs/search/engine.ts b/plugs/search/engine.ts index a6b16e05..ce1f276f 100644 --- a/plugs/search/engine.ts +++ b/plugs/search/engine.ts @@ -114,6 +114,5 @@ export class SimpleSearchEngine { } await this.index.delete(keysToDelete); await this.reverseIndex.delete(revKeysToDelete); - // console.log("Deleted", documentId, keysToDelete, revKeysToDelete); } } diff --git a/server/server_system.ts b/server/server_system.ts index 64fe31a8..ae4db73d 100644 --- a/server/server_system.ts +++ b/server/server_system.ts @@ -145,6 +145,17 @@ export class ServerSystem { } })().catch(console.error); }); + + // Check if this space was ever indexed before + if (!await this.kvStore.has("$initialIndexCompleted")) { + console.log("Indexing space for the first time (in the background)"); + this.system.loadedPlugs.get("index")!.invoke( + "reindexSpace", + [], + ).then(() => { + this.kvStore.set("$initialIndexCompleted", true); + }).catch(console.error); + } } async loadPlugs() {