Closed danrthompson closed 6 months ago
let me know if there is any additional info i should provide
i gave the notion integration all permissions
added a print statement here:
def update_entries_with_ids(self, current_entries, user: KhojUser = None):
# Identify, mark and merge any new entries with previous entries
print(current_entries)
with timer("Identify new or updated entries", logger):
num_new_embeddings, num_deleted_embeddings = self.update_embeddings(
current_entries,
DbEntry.EntryType.NOTION,
DbEntry.EntrySource.NOTION,
key="compiled",
logger=logger,
user=user,
)
return num_new_embeddings, num_deleted_embeddings
console output:
[{'raw': 'Hea\n\nTest\n', 'compiled': 'Hea\n\nTest\n', 'heading': 'Ysys', 'file': 'https://www.notion.so/Ysys-e8932da8e48b4228b069aede4b17bea5', 'corpus_id': 'None'}, {'raw': "\n<b>Hea</b>\n<a href='https://www.notion.so/a4341eac0f374c0f997302f6d0d89a03'>Untitled</a> ", 'compiled': "\n<b>Hea</b>\n<a href='https://www.notion.so/a4341eac0f374c0f997302f6d0d89a03'>Untitled</a> ", 'heading': 'Ysys', 'file': 'https://www.notion.so/Ysys-e8932da8e48b4228b069aede4b17bea5', 'corpus_id': 'None'}, {'raw': '\n<b>Hea</b>\nReminder: gauche', 'compiled': '\n<b>Hea</b>\nReminder: gauche', 'heading': 'Ysys', 'file': 'https://www.notion.so/Ysys-e8932da8e48b4228b069aede4b17bea5', 'corpus_id': 'None'}, {'raw': 'Testing!', 'compiled': 'Testing!', 'heading': 'Test', 'file': 'https://www.notion.so/Test-ae4b8b05af304efb9dfd72723fc3ea9e', 'corpus_id': 'None'}]
so the corpus id is None
Describe the bug
A clear and concise description of what the bug is. Please include what you were expecting to happen vs. what actually happened.
when i try to setup notion by adding my token, adding the connection to a page (i tried a demo page with basically no contents and no databases), then hitting reinitialize, the loading of the notion contents fails
the demo page has title "Test" and contents "Testing!"
To Reproduce
Steps to reproduce the behavior: install the server on a mac with docker compose (using the 1.5.0, 1.4.0, or 1.1.0 backend version), then create notion integration, add notion connection to a page, save token to backend, and reinitialize
Screenshots
If applicable, add screenshots to help explain your problem.
Platform
If self-hosted
Additional context
Add any other context about the problem here.
stack trace: khoj-server-1 | [20:59:13] INFO ๐ฌ Initializing content index... configure.py:236 khoj-server-1 | DEBUG ๐จ No Content configuration available. indexer.py:338 khoj-server-1 | INFO ๐ Khoj is ready to use main.py:157 khoj-server-1 | INFO Started server process [1] server.py:75 khoj-server-1 | INFO Waiting for application startup. on.py:45 khoj-server-1 | INFO Application startup complete. on.py:59 khoj-server-1 | INFO Uvicorn running on http://0.0.0.0:42110 (Press server.py:206 khoj-server-1 | CTRL+C to quit) khoj-server-1 | [21:00:27] INFO 192.168.65.1:49632 - "GET h11_impl.py:431 khoj-server-1 | /config/content-source/notion HTTP/1.1" 200 khoj-server-1 | INFO 192.168.65.1:49632 - "GET h11_impl.py:431 khoj-server-1 | /static/assets/pico.min.css HTTP/1.1" 200 khoj-server-1 | INFO 192.168.65.1:49633 - "GET h11_impl.py:431 khoj-server-1 | /static/assets/khoj.css HTTP/1.1" 200 khoj-server-1 | INFO 192.168.65.1:49634 - "GET h11_impl.py:431 khoj-server-1 | /static/assets/utils.js HTTP/1.1" 200 khoj-server-1 | INFO 192.168.65.1:49636 - "GET h11_impl.py:431 khoj-server-1 | /static/assets/icons/khoj-logo-sideways-500. khoj-server-1 | png HTTP/1.1" 200 khoj-server-1 | INFO 192.168.65.1:49635 - "GET h11_impl.py:431 khoj-server-1 | /static/assets/icons/notion.svg HTTP/1.1" khoj-server-1 | 200 khoj-server-1 | INFO 192.168.65.1:49635 - "GET h11_impl.py:431 khoj-server-1 | /static/assets/icons/favicon-128x128.png khoj-server-1 | HTTP/1.1" 200 khoj-server-1 | [21:00:30] INFO 192.168.65.1:49635 - "POST h11_impl.py:431 khoj-server-1 | /api/config/data/content-source/notion khoj-server-1 | HTTP/1.1" 200 khoj-server-1 | [21:00:31] INFO ๐ฌ Updating content index... configure.py:239 khoj-server-1 | INFO ๐ Setting up search for notion indexer.py:311 khoj-server-1 | [21:00:34] DEBUG Getting all pages via search endpoint: 2.821 helpers.py:156 khoj-server-1 | seconds khoj-server-1 | [21:00:36] DEBUG Processing page helpers.py:156 khoj-server-1 | ae4b8b05-af30-4efb-9dfd-72723fc3ea9e: 1.668 khoj-server-1 | seconds khoj-server-1 | DEBUG Processing response: 1.671 seconds helpers.py:156 Hashing Entries: 100%|โโโโโโโโโโ| 1/1 [00:00<00:00, 11618.57it/s] khoj-server-1 | DEBUG Constructed current entry hashes in: 0.006 helpers.py:156 khoj-server-1 | seconds Identify new entries: 100%|โโโโโโโโโโ| 1/1 [00:00<00:00, 63.05it/s] khoj-server-1 | DEBUG Identified entries to add to database in: helpers.py:156 khoj-server-1 | 0.016 seconds Batches: 100%|โโโโโโโโโโ| 1/1 [00:00<00:00, 2.06it/s] khoj-server-1 | DEBUG Generated embeddings for entries to add to helpers.py:156 khoj-server-1 | database in: 0.503 seconds Add entries to database: 0it [00:00, ?it/s] khoj-server-1 | DEBUG Added entries to database in: 0.001 seconds helpers.py:156 khoj-server-1 | DEBUG Identify new or updated entries: 0.533 helpers.py:156 khoj-server-1 | seconds khoj-server-1 | ERROR ๐จ Failed to setup Notion: ['โNoneโ is not a indexer.py:322 khoj-server-1 | valid UUID.'] khoj-server-1 | โญโโโโ Traceback (most recent call last) โโโโโฎ khoj-server-1 | โ /usr/local/lib/python3.10/dist-packages/d โ khoj-server-1 | โ jango/db/models/fields/init.py:2688 โ khoj-server-1 | โ in to_python โ khoj-server-1 | โ โ khoj-server-1 | โ 2685 โ โ if value is not None and n โ khoj-server-1 | โ 2686 โ โ โ input_form = "int" if โ khoj-server-1 | โ 2687 โ โ โ try: โ khoj-server-1 | โ โฑ 2688 โ โ โ โ return uuid.UUID(* โ khoj-server-1 | โ 2689 โ โ โ except (AttributeError โ khoj-server-1 | โ 2690 โ โ โ โ raise exceptions.V โ khoj-server-1 | โ 2691 โ โ โ โ โ self.errormes โ khoj-server-1 | โ โ khoj-server-1 | โ /usr/lib/python3.10/uuid.py:177 in โ khoj-server-1 | โ init โ khoj-server-1 | โ โ khoj-server-1 | โ 174 โ โ โ hex = hex.replace('urn: โ khoj-server-1 | โ 175 โ โ โ hex = hex.strip('{}').r โ khoj-server-1 | โ 176 โ โ โ if len(hex) != 32: โ khoj-server-1 | โ โฑ 177 โ โ โ โ raise ValueError('b โ khoj-server-1 | โ 178 โ โ โ int = int(hex, 16) โ khoj-server-1 | โ 179 โ โ if bytes_le is not None: โ khoj-server-1 | โ 180 โ โ โ if len(bytes_le) != 16: โ khoj-server-1 | โฐโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฏ khoj-server-1 | ValueError: badly formed hexadecimal UUID khoj-server-1 | string khoj-server-1 | khoj-server-1 | During handling of the above exception, khoj-server-1 | another exception occurred: khoj-server-1 | khoj-server-1 | โญโโโโ Traceback (most recent call last) โโโโโฎ khoj-server-1 | โ /app/src/khoj/routers/indexer.py:312 in โ khoj-server-1 | โ configure_content โ khoj-server-1 | โ โ khoj-server-1 | โ 309 โ โ โ search_type == state.Se โ khoj-server-1 | โ state.SearchType.Notion.value โ khoj-server-1 | โ 310 โ โ ) and notion_config: โ khoj-server-1 | โ 311 โ โ โ logger.info("๐ Setting โ khoj-server-1 | โ โฑ 312 โ โ โ text_search.setup( โ khoj-server-1 | โ 313 โ โ โ โ NotionToEntries, โ khoj-server-1 | โ 314 โ โ โ โ None, โ khoj-server-1 | โ 315 โ โ โ โ regenerate=regenera โ khoj-server-1 | โ โ khoj-server-1 | โ /app/src/khoj/search_type/text_search.py: โ khoj-server-1 | โ 202 in setup โ khoj-server-1 | โ โ khoj-server-1 | โ 199 โ config=None, โ khoj-server-1 | โ 200 ) -> None: โ khoj-server-1 | โ 201 โ if config: โ khoj-server-1 | โ โฑ 202 โ โ num_new_embeddings, num_del โ khoj-server-1 | โ 203 โ โ โ files=files, full_corpu โ khoj-server-1 | โ 204 โ โ ) โ khoj-server-1 | โ 205 โ else: โ khoj-server-1 | โ โ khoj-server-1 | โ /app/src/khoj/processor/content/notion/no โ khoj-server-1 | โ tion_to_entries.py:115 in process โ khoj-server-1 | โ โ khoj-server-1 | โ 112 โ โ โ โ โ โ โ page_en โ khoj-server-1 | โ 113 โ โ โ โ โ โ โ current โ khoj-server-1 | โ 114 โ โ โ khoj-server-1 | โ โฑ 115 โ โ return self.updateentries โ khoj-server-1 | โ 116 โ โ khoj-server-1 | โ 117 โ def process_page(self, page): โ khoj-server-1 | โ 118 โ โ page_id = page["id"] โ khoj-server-1 | โ โ khoj-server-1 | โ /app/src/khoj/processor/content/notion/no โ khoj-server-1 | โ tion_to_entries.py:247 in โ khoj-server-1 | โ update_entries_with_ids โ khoj-server-1 | โ โ khoj-server-1 | โ 244 โ def update_entries_with_ids(sel โ khoj-server-1 | โ 245 โ โ # Identify, mark and merge โ khoj-server-1 | โ 246 โ โ with timer("Identify new or โ khoj-server-1 | โ โฑ 247 โ โ โ num_new_embeddings, num โ khoj-server-1 | โ 248 โ โ โ โ current_entries, โ khoj-server-1 | โ 249 โ โ โ โ DbEntry.EntryType.N โ khoj-server-1 | โ 250 โ โ โ โ DbEntry.EntrySource โ khoj-server-1 | โ โ khoj-server-1 | โ /app/src/khoj/processor/content/text_to_e โ khoj-server-1 | โ ntries.py:141 in updateembeddings โ khoj-server-1 | โ โ khoj-server-1 | โ 138 โ โ โ โ โ โ โ corpus โ khoj-server-1 | โ 139 โ โ โ โ โ โ ) โ khoj-server-1 | โ 140 โ โ โ โ โ ) โ khoj-server-1 | โ โฑ 141 โ โ โ โ added_entries += Db โ khoj-server-1 | โ 142 โ โ โ logger.debug(f"Added {l โ khoj-server-1 | โ 143 โ โ โ khoj-server-1 | โ 144 โ โ new_dates = [] โ khoj-server-1 | โ โ khoj-server-1 | โ /usr/local/lib/python3.10/dist-packages/d โ khoj-server-1 | โ jango/db/models/manager.py:87 in โ khoj-server-1 | โ manager_method โ khoj-server-1 | โ โ khoj-server-1 | โ 84 โ โ def create_method(name, met โ khoj-server-1 | โ 85 โ โ โ @wraps(method) โ khoj-server-1 | โ 86 โ โ โ def manager_method(self โ khoj-server-1 | โ โฑ 87 โ โ โ โ return getattr(self โ khoj-server-1 | โ 88 โ โ โ โ khoj-server-1 | โ 89 โ โ โ return manager_method โ khoj-server-1 | โ 90 โ khoj-server-1 | โ โ khoj-server-1 | โ /usr/local/lib/python3.10/dist-packages/d โ khoj-server-1 | โ jango/db/models/query.py:803 in โ khoj-server-1 | โ bulk_create โ khoj-server-1 | โ โ khoj-server-1 | โ 800 โ โ โ โ โ obj_with_pk._s โ khoj-server-1 | โ 801 โ โ โ if objs_without_pk: โ khoj-server-1 | โ 802 โ โ โ โ fields = [f for f โ khoj-server-1 | โ โฑ 803 โ โ โ โ returned_columns = โ khoj-server-1 | โ 804 โ โ โ โ โ objs_without_p โ khoj-server-1 | โ 805 โ โ โ โ โ fields, โ khoj-server-1 | โ 806 โ โ โ โ โ batch_size, โ khoj-server-1 | โ โ khoj-server-1 | โ /usr/local/lib/python3.10/dist-packages/d โ khoj-server-1 | โ jango/db/models/query.py:1831 in โ khoj-server-1 | โ _batched_insert โ khoj-server-1 | โ โ khoj-server-1 | โ 1828 โ โ for item in [objs[i : i + โ khoj-server-1 | โ 1829 โ โ โ if bulkreturn and on โ khoj-server-1 | โ 1830 โ โ โ โ inserted_rows.exte โ khoj-server-1 | โ โฑ 1831 โ โ โ โ โ self._insert( โ khoj-server-1 | โ 1832 โ โ โ โ โ โ item, โ khoj-server-1 | โ 1833 โ โ โ โ โ โ fields=fie โ khoj-server-1 | โ 1834 โ โ โ โ โ โ using=self โ khoj-server-1 | โ โ khoj-server-1 | โ /usr/local/lib/python3.10/dist-packages/d โ khoj-server-1 | โ jango/db/models/query.py:1805 in _insert โ khoj-server-1 | โ โ khoj-server-1 | โ 1802 โ โ โ unique_fields=unique_f โ khoj-server-1 | โ 1803 โ โ ) โ khoj-server-1 | โ 1804 โ โ query.insert_values(fields โ khoj-server-1 | โ โฑ 1805 โ โ return query.get_compiler( โ khoj-server-1 | โ 1806 โ โ khoj-server-1 | โ 1807 โ _insert.alters_data = True โ khoj-server-1 | โ 1808 โ _insert.queryset_only = False โ khoj-server-1 | โ โ khoj-server-1 | โ /usr/local/lib/python3.10/dist-packages/d โ khoj-server-1 | โ jango/db/models/sql/compiler.py:1821 in โ khoj-server-1 | โ execute_sql โ khoj-server-1 | โ โ khoj-server-1 | โ 1818 โ โ opts = self.query.get_meta โ khoj-server-1 | โ 1819 โ โ self.returningfields = re โ khoj-server-1 | โ 1820 โ โ with self.connection.curso โ khoj-server-1 | โ โฑ 1821 โ โ โ for sql, params in sel โ khoj-server-1 | โ 1822 โ โ โ โ cursor.execute(sql โ khoj-server-1 | โ 1823 โ โ โ if not self.returning โ khoj-server-1 | โ 1824 โ โ โ โ return [] โ khoj-server-1 | โ โ khoj-server-1 | โ /usr/local/lib/python3.10/dist-packages/d โ khoj-server-1 | โ jango/db/models/sql/compiler.py:1745 in โ khoj-server-1 | โ as_sql โ khoj-server-1 | โ โ khoj-server-1 | โ 1742 โ โ result.append("(%s)" % ", โ khoj-server-1 | โ 1743 โ โ โ khoj-server-1 | โ 1744 โ โ if self.query.fields: โ khoj-server-1 | โ โฑ 1745 โ โ โ value_rows = [ โ khoj-server-1 | โ 1746 โ โ โ โ [ โ khoj-server-1 | โ 1747 โ โ โ โ โ self.prepare_v โ khoj-server-1 | โ 1748 โ โ โ โ โ for field in f โ khoj-server-1 | โ โ khoj-server-1 | โ /usr/local/lib/python3.10/dist-packages/d โ khoj-server-1 | โ jango/db/models/sql/compiler.py:1746 in โ khoj-server-1 | โ โ
khoj-server-1 | โ โ
khoj-server-1 | โ 1743 โ โ โ
khoj-server-1 | โ 1744 โ โ if self.query.fields: โ
khoj-server-1 | โ 1745 โ โ โ value_rows = [ โ
khoj-server-1 | โ โฑ 1746 โ โ โ โ [ โ
khoj-server-1 | โ 1747 โ โ โ โ โ self.prepare_v โ
khoj-server-1 | โ 1748 โ โ โ โ โ for field in f โ
khoj-server-1 | โ 1749 โ โ โ โ ] โ
khoj-server-1 | โ โ
khoj-server-1 | โ /usr/local/lib/python3.10/dist-packages/d โ
khoj-server-1 | โ jango/db/models/sql/compiler.py:1747 in โ
khoj-server-1 | โ โ
khoj-server-1 | โ โ
khoj-server-1 | โ 1744 โ โ if self.query.fields: โ
khoj-server-1 | โ 1745 โ โ โ value_rows = [ โ
khoj-server-1 | โ 1746 โ โ โ โ [ โ
khoj-server-1 | โ โฑ 1747 โ โ โ โ โ self.prepare_v โ
khoj-server-1 | โ 1748 โ โ โ โ โ for field in f โ
khoj-server-1 | โ 1749 โ โ โ โ ] โ
khoj-server-1 | โ 1750 โ โ โ โ for obj in self.qu โ
khoj-server-1 | โ โ
khoj-server-1 | โ /usr/local/lib/python3.10/dist-packages/d โ
khoj-server-1 | โ jango/db/models/sql/compiler.py:1686 in โ
khoj-server-1 | โ prepare_value โ
khoj-server-1 | โ โ
khoj-server-1 | โ 1683 โ โ โ โ โ "Window expres โ
khoj-server-1 | โ 1684 โ โ โ โ โ % (field.name, โ
khoj-server-1 | โ 1685 โ โ โ โ ) โ
khoj-server-1 | โ โฑ 1686 โ โ return field.get_db_prep_s โ
khoj-server-1 | โ 1687 โ โ
khoj-server-1 | โ 1688 โ def pre_save_val(self, field, โ
khoj-server-1 | โ 1689 โ โ """ โ
khoj-server-1 | โ โ
khoj-server-1 | โ /usr/local/lib/python3.10/dist-packages/d โ
khoj-server-1 | โ jango/db/models/fields/init.py:954 in โ
khoj-server-1 | โ get_db_prep_save โ
khoj-server-1 | โ โ
khoj-server-1 | โ 951 โ โ """Return field's value pr โ
khoj-server-1 | โ 952 โ โ if hasattr(value, "as_sql" โ
khoj-server-1 | โ 953 โ โ โ return value โ
khoj-server-1 | โ โฑ 954 โ โ return self.get_db_prep_va โ
khoj-server-1 | โ 955 โ โ
khoj-server-1 | โ 956 โ def has_default(self): โ
khoj-server-1 | โ 957 โ โ """Return a boolean of whe โ
khoj-server-1 | โ โ
khoj-server-1 | โ /usr/local/lib/python3.10/dist-packages/d โ
khoj-server-1 | โ jango/db/models/fields/init.py:2678 โ
khoj-server-1 | โ in get_db_prep_value โ
khoj-server-1 | โ โ
khoj-server-1 | โ 2675 โ โ if value is None: โ
khoj-server-1 | โ 2676 โ โ โ return None โ
khoj-server-1 | โ 2677 โ โ if not isinstance(value, u โ
khoj-server-1 | โ โฑ 2678 โ โ โ value = self.to_python โ
khoj-server-1 | โ 2679 โ โ โ
khoj-server-1 | โ 2680 โ โ if connection.features.has โ
khoj-server-1 | โ 2681 โ โ โ return value โ
khoj-server-1 | โ โ
khoj-server-1 | โ /usr/local/lib/python3.10/dist-packages/d โ
khoj-server-1 | โ jango/db/models/fields/init.py:2690 โ
khoj-server-1 | โ in to_python โ
khoj-server-1 | โ โ
khoj-server-1 | โ 2687 โ โ โ try: โ
khoj-server-1 | โ 2688 โ โ โ โ return uuid.UUID(* โ
khoj-server-1 | โ 2689 โ โ โ except (AttributeError โ
khoj-server-1 | โ โฑ 2690 โ โ โ โ raise exceptions.V โ
khoj-server-1 | โ 2691 โ โ โ โ โ self.error_mes โ
khoj-server-1 | โ 2692 โ โ โ โ โ code="invalid" โ
khoj-server-1 | โ 2693 โ โ โ โ โ params={"value โ
khoj-server-1 | โฐโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฏ
khoj-server-1 | ValidationError: ['โNoneโ is not a valid
khoj-server-1 | UUID.']
khoj-server-1 | [21:00:37] ERROR ๐จ Failed to update server via API: Failed to api.py:204
khoj-server-1 | update content index
khoj-server-1 | โญโโโโโโ Traceback (most recent call last) โโโโโโโฎ
khoj-server-1 | โ /app/src/khoj/routers/api.py:201 in update โ
khoj-server-1 | โ โ
khoj-server-1 | โ 198 โ โ logger.warning(error_msg) โ
khoj-server-1 | โ 199 โ โ raise HTTPException(status_code โ
khoj-server-1 | โ 200 โ try: โ
khoj-server-1 | โ โฑ 201 โ โ configure_server(state.config, โ
khoj-server-1 | โ 202 โ except Exception as e: โ
khoj-server-1 | โ 203 โ โ error_msg = f"๐จ Failed to upda โ
khoj-server-1 | โ 204 โ โ logger.error(error_msg, exc_inf โ
khoj-server-1 | โ โ
khoj-server-1 | โ /app/src/khoj/configure.py:228 in โ
khoj-server-1 | โ configure_server โ
khoj-server-1 | โ โ
khoj-server-1 | โ 225 โ โ state.search_models = configure โ
khoj-server-1 | โ state.config.search_type) โ
khoj-server-1 | โ 226 โ โ initialize_content(regenerate, โ
khoj-server-1 | โ 227 โ except Exception as e: โ
khoj-server-1 | โ โฑ 228 โ โ raise e โ
khoj-server-1 | โ 229 โ
khoj-server-1 | โ 230 โ
khoj-server-1 | โ 231 def initialize_content(regenerate: bool โ
khoj-server-1 | โ init=False, user: KhojUser = None): โ
khoj-server-1 | โ โ
khoj-server-1 | โ /app/src/khoj/configure.py:226 in โ
khoj-server-1 | โ configure_server โ
khoj-server-1 | โ โ
khoj-server-1 | โ 223 โ โ โ
khoj-server-1 | โ 224 โ โ state.SearchType = configure_se โ
khoj-server-1 | โ 225 โ โ state.search_models = configure โ
khoj-server-1 | โ state.config.search_type) โ
khoj-server-1 | โ โฑ 226 โ โ initialize_content(regenerate, โ
khoj-server-1 | โ 227 โ except Exception as e: โ
khoj-server-1 | โ 228 โ โ raise e โ
khoj-server-1 | โ 229 โ
khoj-server-1 | โ โ
khoj-server-1 | โ /app/src/khoj/configure.py:253 in โ
khoj-server-1 | โ initialize_content โ
khoj-server-1 | โ โ
khoj-server-1 | โ 250 โ โ โ โ if not status: โ
khoj-server-1 | โ 251 โ โ โ โ โ raise RuntimeError( โ
khoj-server-1 | โ 252 โ โ except Exception as e: โ
khoj-server-1 | โ โฑ 253 โ โ โ raise e โ
khoj-server-1 | โ 254 โ
khoj-server-1 | โ 255 โ
khoj-server-1 | โ 256 def configure_routes(app): โ
khoj-server-1 | โ โ
khoj-server-1 | โ /app/src/khoj/configure.py:251 in โ
khoj-server-1 | โ initialize_content โ
khoj-server-1 | โ โ
khoj-server-1 | โ 248 โ โ โ โ โ user=user, โ
khoj-server-1 | โ 249 โ โ โ โ ) โ
khoj-server-1 | โ 250 โ โ โ โ if not status: โ
khoj-server-1 | โ โฑ 251 โ โ โ โ โ raise RuntimeError( โ
khoj-server-1 | โ 252 โ โ except Exception as e: โ
khoj-server-1 | โ 253 โ โ โ raise e โ
khoj-server-1 | โ 254 โ
khoj-server-1 | โฐโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโฏ
khoj-server-1 | RuntimeError: Failed to update content index
khoj-server-1 | [21:00:38] INFO 192.168.65.1:49636 - "GET h11_impl.py:431