Indrani Medhi

19 papers A* 6B 1C 3Misc 1Journal 3Unranked 5
YearRankTypeTitle / Venue / Authors
2013 conf
INTERACT (2)
Indrani Medhi, Kentaro Toyama, Anirudha Joshi, Uday Athavankar, Edward Cutrell
2013 conf
ACM DEV (3)
Kalika Bali, Sunayana Sitaram, Sébastien Cuendet, Indrani Medhi
2013 conf
ACM DEV (3)
Dipanjan Chakraborty, Indrani Medhi, Edward Cutrell, William Thies
2013 A* conf
CHI
Indrani Medhi, Meera Lakshmanan, Kentaro Toyama, Edward Cutrell
2013 A* conf
CHI
Sébastien Cuendet, Indrani Medhi, Kalika Bali, Edward Cutrell
2012 A* conf
CHI
Nicola Dell, Vidya Vaidyanathan, Indrani Medhi, Edward Cutrell, William Thies
2012 Misc conf
NordiCHI
Indrani Medhi, Mohit Jain, Anuj Tewari, Mohini Bhavsar, Michael Matheke-Fischer, Edward Cutrell
2011 J jnl
ACM Trans. Comput. Hum. Interact.
Indrani Medhi, Somani Patnaik, Emma Brunskill, S. N. Nagasena Gautama, William Thies, Kentaro Toyama
2010 C conf
ICTD
Indrani Medhi, S. Raghu Menon, Edward Cutrell, Kentaro Toyama
2010 A* conf
CHI
Thomas N. Smyth, Satish Kumar, Indrani Medhi, Kentaro Toyama
2009 A* conf
CHI
Indrani Medhi, S. N. Nagasena Gautama, Kentaro Toyama
2009 conf
HCI (14)
Indrani Medhi, Aishwarya Ratan, Kentaro Toyama
2008 conf
CHI Extended Abstracts
Indrani Medhi, Geeta Menon, Kentaro Toyama
2008 B conf
AVI
Archana Prasad, Indrani Medhi, Kentaro Toyama, Ravin Balakrishnan
2008 J jnl
Computer
Jonathan Donner, Rikin Gandhi, Paul Javid, Indrani Medhi, Aishwarya Ratan, Kentaro Toyama, Rajesh Veeraraghavan
2007 C conf
ICTD
Indrani Medhi, Kentaro Toyama
2007 A* conf
WWW
Indrani Medhi, Archana Prasad, Kentaro Toyama
2007 J jnl
Interactions
Indrani Medhi
2006 C conf
ICTD
Indrani Medhi, Aman Sagar, Kentaro Toyama
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()