mirror of
https://github.com/danswer-ai/danswer.git
synced 2025-09-28 04:49:21 +02:00
Increase vespa attempts on startup
This commit is contained in:
@@ -118,6 +118,8 @@ VESPA_HOST = os.environ.get("VESPA_HOST") or "localhost"
|
|||||||
VESPA_CONFIG_SERVER_HOST = os.environ.get("VESPA_CONFIG_SERVER_HOST") or VESPA_HOST
|
VESPA_CONFIG_SERVER_HOST = os.environ.get("VESPA_CONFIG_SERVER_HOST") or VESPA_HOST
|
||||||
VESPA_PORT = os.environ.get("VESPA_PORT") or "8081"
|
VESPA_PORT = os.environ.get("VESPA_PORT") or "8081"
|
||||||
VESPA_TENANT_PORT = os.environ.get("VESPA_TENANT_PORT") or "19071"
|
VESPA_TENANT_PORT = os.environ.get("VESPA_TENANT_PORT") or "19071"
|
||||||
|
# the number of times to try and connect to vespa on startup before giving up
|
||||||
|
VESPA_NUM_ATTEMPTS_ON_STARTUP = int(os.environ.get("NUM_RETRIES_ON_STARTUP") or 10)
|
||||||
|
|
||||||
VESPA_CLOUD_URL = os.environ.get("VESPA_CLOUD_URL", "")
|
VESPA_CLOUD_URL = os.environ.get("VESPA_CLOUD_URL", "")
|
||||||
|
|
||||||
|
@@ -4,6 +4,7 @@ from sqlalchemy.orm import Session
|
|||||||
|
|
||||||
from danswer.configs.app_configs import DISABLE_INDEX_UPDATE_ON_SWAP
|
from danswer.configs.app_configs import DISABLE_INDEX_UPDATE_ON_SWAP
|
||||||
from danswer.configs.app_configs import MANAGED_VESPA
|
from danswer.configs.app_configs import MANAGED_VESPA
|
||||||
|
from danswer.configs.app_configs import VESPA_NUM_ATTEMPTS_ON_STARTUP
|
||||||
from danswer.configs.constants import KV_REINDEX_KEY
|
from danswer.configs.constants import KV_REINDEX_KEY
|
||||||
from danswer.configs.constants import KV_SEARCH_SETTINGS
|
from danswer.configs.constants import KV_SEARCH_SETTINGS
|
||||||
from danswer.configs.model_configs import FAST_GEN_AI_MODEL_VERSION
|
from danswer.configs.model_configs import FAST_GEN_AI_MODEL_VERSION
|
||||||
@@ -221,13 +222,13 @@ def setup_vespa(
|
|||||||
document_index: DocumentIndex,
|
document_index: DocumentIndex,
|
||||||
index_setting: IndexingSetting,
|
index_setting: IndexingSetting,
|
||||||
secondary_index_setting: IndexingSetting | None,
|
secondary_index_setting: IndexingSetting | None,
|
||||||
|
num_attempts: int = VESPA_NUM_ATTEMPTS_ON_STARTUP,
|
||||||
) -> bool:
|
) -> bool:
|
||||||
# Vespa startup is a bit slow, so give it a few seconds
|
# Vespa startup is a bit slow, so give it a few seconds
|
||||||
WAIT_SECONDS = 5
|
WAIT_SECONDS = 5
|
||||||
VESPA_ATTEMPTS = 5
|
for x in range(num_attempts):
|
||||||
for x in range(VESPA_ATTEMPTS):
|
|
||||||
try:
|
try:
|
||||||
logger.notice(f"Setting up Vespa (attempt {x+1}/{VESPA_ATTEMPTS})...")
|
logger.notice(f"Setting up Vespa (attempt {x+1}/{num_attempts})...")
|
||||||
document_index.ensure_indices_exist(
|
document_index.ensure_indices_exist(
|
||||||
index_embedding_dim=index_setting.model_dim,
|
index_embedding_dim=index_setting.model_dim,
|
||||||
secondary_index_embedding_dim=secondary_index_setting.model_dim
|
secondary_index_embedding_dim=secondary_index_setting.model_dim
|
||||||
@@ -244,7 +245,7 @@ def setup_vespa(
|
|||||||
time.sleep(WAIT_SECONDS)
|
time.sleep(WAIT_SECONDS)
|
||||||
|
|
||||||
logger.error(
|
logger.error(
|
||||||
f"Vespa setup did not succeed. Attempt limit reached. ({VESPA_ATTEMPTS})"
|
f"Vespa setup did not succeed. Attempt limit reached. ({num_attempts})"
|
||||||
)
|
)
|
||||||
return False
|
return False
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user