Hala M. Mokhtar

20 papers B 1C 5Journal 4Unranked 9
YearRankTypeTitle / Venue / Authors
2015 J jnl
Int. J. Crit. Comput. Based Syst.
Muhammad Asim, Hala M. Mokhtar, Muhammad Zahid Khan
2011 conf
AINA Workshops
Muhammad Asim, Hala M. Mokhtar, Muhammad Zahid Khan, Madjid Merabti
2011 C conf
DeSE
Ijaz Muhammad Khan, Muhammad Zahid Khan, Hala M. Mokhtar, Madjid Merabti
2010 C conf
CIT
Shih-Hao Chang, Madjid Merabti, Hala M. Mokhtar
2010 J jnl
CoRR
Muhammad Asim, Hala M. Mokhtar, Madjid Merabti
2009 conf
AINA Workshops
Ian Rhead, Madjid Merabti, Hala M. Mokhtar, Paul Fergus
2009 conf
CCNC
Ian Rhead, Madjid Merabti, Hala M. Mokhtar, Paul Fergus
2009 B conf
LCN
Ijaz Muhammad Khan, Hala M. Mokhtar, Madjid Merabti
2009 ch.
Autonomic Computing and Networking
Mengjie Yu, Hala M. Mokhtar, Madjid Merabti
2008 J jnl
Int. J. Ad Hoc Ubiquitous Comput.
Mengjie Yu, Hala M. Mokhtar, Madjid Merabti
2007 conf
ICC
Faycal Bouhafs, Madjid Merabti, Hala M. Mokhtar
2007 conf
AINA Workshops (1)
Shih-Hao Chang, Madjid Merabti, Hala M. Mokhtar
2007 J jnl
IEEE Wirel. Commun.
Mengjie Yu, Hala M. Mokhtar, Madjid Merabti
2007 conf
AINA Workshops (1)
Faycal Bouhafs, Madjid Merabti, Hala M. Mokhtar
2007 conf
ICWN
Shih-Hao Chang, Madjid Merabti, Hala M. Mokhtar
2006 conf
CCNC
Faycal Bouhafs, Madjid Merabti, Hala M. Mokhtar
2003 C conf
ISCC
Hala M. Mokhtar, Rubem Pereira, Madjid Merabti
2002 C conf
ISCC
Hala M. Mokhtar, Rubem Pereira, Madjid Merabti
2001 conf
ICN (2)
Hala M. Mokhtar, Rubem Pereira, Madjid Merabti
2001 C conf
ISCC
Hala M. Mokhtar, Rubem Pereira, Madjid Merabti
redb/settings/clickhouse.py
← Index redb/settings/clickhouse.py python
import os
import clickhouse_connect
from dotenv import load_dotenv

load_dotenv()

# ClickHouse configuration
CLICKHOUSE_HOST = os.getenv("CLICKHOUSE_HOST")
CLICKHOUSE_PORT = os.getenv("CLICKHOUSE_PORT", "9000")
CLICKHOUSE_USER = os.getenv("CLICKHOUSE_USER")
CLICKHOUSE_PASSWORD = os.getenv("CLICKHOUSE_PASSWORD")
CLICKHOUSE_DATABASE = os.getenv("CLICKHOUSE_DATABASE", "default")
CLICKHOUSE_ENFORCE_SSL = os.getenv("CLICKHOUSE_ENFORCE_SSL", "False")

# Cached client instance
_clickhouse_client = None

def get_clickhouse_client():
    """Get ClickHouse client with lazy initialization and caching"""
    global _clickhouse_client
    
    if _clickhouse_client is None:
        _clickhouse_client = clickhouse_connect.get_client(
            host=CLICKHOUSE_HOST,
            port=CLICKHOUSE_PORT,
            user=CLICKHOUSE_USER,
            password=CLICKHOUSE_PASSWORD,
            database=CLICKHOUSE_DATABASE,
            verify=CLICKHOUSE_ENFORCE_SSL,
            settings={
                'max_execution_time': 3600,  # 1 hour timeout
                'connect_timeout': 30,
                'receive_timeout': 30,
                'send_timeout': 30
            }
        )
    
    return _clickhouse_client

def create_clickhouse_client():
    """Create a new ClickHouse client connection (legacy function)"""
    return get_clickhouse_client()

CLICKHOUSE_BINARIES_TABLE = os.getenv("CLICKHOUSE_BINARIES_TABLE", "binaries")