K. Somasundaram

25 papers Journal 24Unranked 1
YearRankTypeTitle / Venue / Authors
2025 J jnl
AKCE Int. J. Graphs Comb.
S. C. Manju, K. Somasundaram, Yilun Shang
2025 J jnl
Discret. Math. Algorithms Appl.
Nandana K. Vasudevan, J. Geetha, K. Somasundaram
2025 J jnl
IEEE Access
M. G. Thushara, K. Somasundaram
2025 J jnl
Discret. Math. Algorithms Appl.
Rangasamy Hemalatha, J. Geetha, K. Somasundaram
2024 J jnl
Discret. Math. Algorithms Appl.
T. P. Sandhiya, J. Geetha, K. Somasundaram
2023 J jnl
J. Intell. Fuzzy Syst.
S. C. Manju, J. Geetha, K. Somasundaram
2023 J jnl
Soft Comput.
S. Prajnanaswaroopa, J. Geetha, K. Somasundaram
2022 J jnl
Bull. ICA
Divya K. Udayan, K. Somasundaram
2022 J jnl
Discret. Math. Algorithms Appl.
T. P. Sandhiya, J. Geetha, K. Somasundaram
2021 J jnl
Discret. Math. Algorithms Appl.
S. Mohan, J. Geetha, K. Somasundaram
2021 J jnl
Discret. Math. Algorithms Appl.
J. Geetha, K. Somasundaram, Hung-Lin Fu
2021 J jnl
CoRR
Prajnanaswaroopa S, J. Geetha, K. Somasundaram
2021 J jnl
Discret. Math. Algorithms Appl.
C. Gopika, J. Geetha, K. Somasundaram
2020 J jnl
CoRR
Prajnanaswaroopa S, J. Geetha, K. Somasundaram
2020 J jnl
Discret. Math. Algorithms Appl.
S. Mohan, K. Somasundaram
2019 conf
PReMI (1)
M. T. Indu, K. Somasundaram, C. Shunmuga Velayutham
2018 J jnl
Algorithms
Radhakrishnan Vignesh, J. Geetha, K. Somasundaram
2018 J jnl
Graphs Comb.
J. Geetha, K. Somasundaram
2018 J jnl
CoRR
Jayabalan Geetha, N. Narayanan, K. Somasundaram
2017 J jnl
Australas. J Comb.
S. Mohan, J. Geetha, K. Somasundaram
2016 J jnl
Electron. Notes Discret. Math.
J. Geetha, K. Somasundaram
2016 J jnl
Electron. Notes Discret. Math.
S. Mohan, J. Geetha, K. Somasundaram
2015 J jnl
Australas. J Comb.
J. Geetha, K. Somasundaram
2012 J jnl
Int. J. Embed. Real Time Commun. Syst.
K. Somasundaram, Juha Plosila
2009 J jnl
Electron. Notes Discret. Math.
K. Somasundaram
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()