Olsi Rrjolli

12 papers A 1B 1Journal 3Unranked 7
YearRankTypeTitle / Venue / Authors
2025 J jnl
J. Softw. Evol. Process.
Alexander Poth, Olsi Rrjolli
2025 conf
EuroSPI (1)
Alexander Poth, Olsi Rrjolli, Huiyu Wang, Klaus Schmid
2025 conf
EuroSPI (1)
Alexander Poth, Olsi Rrjolli, Huiyu Wang
2025 J jnl
CoRR
Philip Garrett, Juan P. Galeotti, Andrea Arcuri, Alexander Poth, Olsi Rrjolli
2025 conf
EuroSPI (1)
Alexander Poth, Olsi Rrjolli, Christian Heimann
2025 A conf
ICST
Andrea Arcuri, Alexander Poth, Olsi Rrjolli
2025 conf
ICSA Companion
Sandro Speth, Elias Müller, Philipp Recke, Niklas Krieger, Steffen Becker, Alexander Poth, Olsi Rrjolli
2025 J jnl
Autom. Softw. Eng.
Alexander Poth, Olsi Rrjolli, Andrea Arcuri
2024 conf
EuroSPI (2)
Alexander Poth, Torben Prang, Olsi Rrjolli
2023 conf
EuroSPI (2)
Alexander Poth, Olsi Rrjolli
2022 conf
QRS Companion
Alexander Poth, Olsi Rrjolli, Andreas Riel
2022 B conf
EuroSPI
Alexander Poth, Dan-Alexander Levien, Olsi Rrjolli, Matthias Wanjetscheck
redb/settings/elasticsearch.py
← Index redb/settings/elasticsearch.py python
import logging
import os

from elasticsearch import Elasticsearch
from dotenv import load_dotenv

load_dotenv()

# Elasticsearch configuration
ELASTIC_ENDPOINT = os.getenv("ELASTIC_HOST")
ELASTIC_ENFORCE_SSL = os.getenv("ELASTIC_ENFORCE_SSL", False) == "True"
ELASTIC_USER = os.getenv("ELASTIC_USER")
ELASTIC_PASSWORD = os.getenv("ELASTIC_PASSWORD")
ELASTIC_BINARIES_COLLECTION = os.getenv("ELASTIC_BINARIES_COLLECTION", "test_db")

# Cached client instance
_elasticsearch_client = None

def get_elasticsearch_client():
    """Get Elasticsearch client with lazy initialization and caching"""
    global _elasticsearch_client
    
    if _elasticsearch_client is None:
        if not ELASTIC_ENDPOINT:
            raise ValueError("ELASTIC_HOST environment variable is required for Elasticsearch connection")
            
        _elasticsearch_client = Elasticsearch(
            ELASTIC_ENDPOINT,
            verify_certs=ELASTIC_ENFORCE_SSL,
            basic_auth=(ELASTIC_USER, ELASTIC_PASSWORD),
            maxsize=20,
            retry_on_timeout=True,
            timeout=30,
        )
    
    return _elasticsearch_client

def create_elasticsearch_client():
    """Create a new Elasticsearch client connection (legacy function)"""
    return get_elasticsearch_client()