diff options
author | Nate Sesti <sestinj@gmail.com> | 2023-09-06 19:40:22 -0700 |
---|---|---|
committer | Nate Sesti <sestinj@gmail.com> | 2023-09-06 19:40:22 -0700 |
commit | f3a5e0f4197b5d768c873ccdb70eb99812d66efe (patch) | |
tree | 9f20d065d8229c86d1101191e8162f5d54336e32 /continuedev/src/continuedev/core | |
parent | 41b3233693c34cd81c872a1e7279721b5f640d60 (diff) | |
parent | bd38794a02d46b70ee018bdd6cd11e3c207465fc (diff) | |
download | sncontinue-f3a5e0f4197b5d768c873ccdb70eb99812d66efe.tar.gz sncontinue-f3a5e0f4197b5d768c873ccdb70eb99812d66efe.tar.bz2 sncontinue-f3a5e0f4197b5d768c873ccdb70eb99812d66efe.zip |
Merge branch 'main' of https://github.com/continuedev/continue
Diffstat (limited to 'continuedev/src/continuedev/core')
-rw-r--r-- | continuedev/src/continuedev/core/context.py | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/continuedev/src/continuedev/core/context.py b/continuedev/src/continuedev/core/context.py index 17e6e85c..125ddc23 100644 --- a/continuedev/src/continuedev/core/context.py +++ b/continuedev/src/continuedev/core/context.py @@ -10,7 +10,7 @@ from ..libs.util.create_async_task import create_async_task from ..libs.util.devdata import dev_data_logger from ..libs.util.logging import logger from ..libs.util.telemetry import posthog_logger -from ..server.meilisearch_server import poll_meilisearch_running +from ..server.meilisearch_server import poll_meilisearch_running, restart_meilisearch from .main import ChatMessage, ContextItem, ContextItemDescription, ContextItemId @@ -269,7 +269,7 @@ class ContextManager: timeout=20, ) - async def load_index(self, workspace_dir: str): + async def load_index(self, workspace_dir: str, should_retry: bool = True): try: async with Client("http://localhost:7700") as search_client: # First, create the index if it doesn't exist @@ -327,6 +327,13 @@ class ContextManager: except Exception as e: logger.debug(f"Error loading meilisearch index: {e}") + if should_retry: + await restart_meilisearch() + try: + asyncio.wait_for(await poll_meilisearch_running(), timeout=20) + except asyncio.TimeoutError: + logger.warning("Meilisearch did not restart in less than 20 seconds. Stopping polling.") + await self.load_index(workspace_dir, False) async def select_context_item(self, id: str, query: str): """ |