From d2f9bca1cfb8b7ff754efceb552969b42a1de78b Mon Sep 17 00:00:00 2001 From: sabaimran Date: Tue, 26 Sep 2023 22:33:44 -0700 Subject: [PATCH] Fix null ref issue in query method and update logic for determining whether khoj is already configured in obsidian --- src/interface/obsidian/src/utils.ts | 1 + src/khoj/search_type/text_search.py | 8 ++++++++ 2 files changed, 9 insertions(+) diff --git a/src/interface/obsidian/src/utils.ts b/src/interface/obsidian/src/utils.ts index cb333310..920da583 100644 --- a/src/interface/obsidian/src/utils.ts +++ b/src/interface/obsidian/src/utils.ts @@ -55,6 +55,7 @@ export async function configureKhojBackend(vault: Vault, setting: KhojSetting, n await request(khoj_already_configured ? khojConfigUrl : `${khojConfigUrl}/default`) .then(response => JSON.parse(response)) .then(data => { + khoj_already_configured = data["content-type"] != null; // If khoj backend not configured yet if (!khoj_already_configured) { // Create khoj content-type config with only markdown configured diff --git a/src/khoj/search_type/text_search.py b/src/khoj/search_type/text_search.py index b790b000..2890baa9 100644 --- a/src/khoj/search_type/text_search.py +++ b/src/khoj/search_type/text_search.py @@ -126,6 +126,14 @@ async def query( dedupe: bool = True, ) -> Tuple[List[dict], List[Entry]]: "Search for entries that answer the query" + if ( + content.entries is None + or len(content.entries) == 0 + or content.corpus_embeddings is None + or len(content.corpus_embeddings) == 0 + ): + return [], [] + query, entries, corpus_embeddings = raw_query, content.entries, content.corpus_embeddings # Filter query, entries and embeddings before semantic search