Vincent Barichard

20 papers B 4C 1Journal 6Unranked 9
YearRankTypeTitle / Venue / Authors
2025 B conf
ICTAI
Vincent Barichard, Igor Stéphan
2025 J jnl
ACM Trans. Comput. Log.
Vincent Barichard, Igor Stéphan
2024 J jnl
Expert Syst. Appl.
Vincent Barichard
2022 conf
JIAF
Igor Stéphan, Vincent Barichard
2020 B conf
ICTAI
Claudia Vasconcellos-Gaete, Vincent Barichard, Frédéric Lardeux
2019 J jnl
Res. Comput. Sci.
Claudia Vasconcellos-Gaete, Vincent Barichard, Frédéric Lardeux
2019 conf
ICLP Technical Communications
Vincent Barichard, Igor Stéphan
2017 J jnl
Rev. d'Intelligence Artif.
Vincent Barichard, Igor Stéphan
2017 conf
VISIGRAPP (2: HUCAPP)
Marouene Kefi, Paul Richard, Thuong N. Hoang, Takehiko Yamaguchi, Vincent Barichard
2014 B conf
ICTAI
Vincent Barichard, Igor Stéphan
2012 B conf
ICTAI
Marouene Kefi, Vincent Barichard, Paul Richard
2011 conf
GRAPP
Marouene Kefi, Paul Richard, Vincent Barichard
2010 conf
GRAPP
Marouene Kefi, Paul Richard, Vincent Barichard
2004 conf
JFPLC
Vincent Barichard, Jin-Kao Hao
2003 conf
Artificial Evolution
Vincent Barichard, Hervé Deleau, Jin-Kao Hao, Frédéric Saubion
2003 C conf
EMO
Vincent Barichard, Jin-Kao Hao
2003 conf
JFPLC
Vincent Barichard, Hervé Deleau, Jin-Kao Hao, Frédéric Saubion
2003 conf
JFPLC
Vincent Barichard, Jin-Kao Hao
2003 J jnl
Tech. Sci. Informatiques
Vincent Barichard, Jin-Kao Hao
2003 J jnl
Tech. Sci. Informatiques
Vincent Barichard, Hervé Deleau, Jin-Kao Hao, Frédéric Saubion
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()