M. Hadi Mashinchi

12 papers B 2C 1Journal 2Unranked 6
YearRankTypeTitle / Venue / Authors
2013 conf
CSE
Zubair Shah, Abdun Naser Mahmood, Mehmet A. Orgun, M. Hadi Mashinchi
2011 J jnl
IEEE Trans. Fuzzy Syst.
M. Hadi Mashinchi, Mehmet A. Orgun, Mashaallah Mashinchi, Witold Pedrycz
2011 B conf
FUZZ-IEEE
Abbas Parchami, Mashaallah Mashinchi, M. Hadi Mashinchi
2011 J jnl
Appl. Soft Comput.
M. Hadi Mashinchi, Mehmet A. Orgun, Witold Pedrycz
2011 B conf
FUZZ-IEEE
M. Hadi Mashinchi, Lei Li, Mehmet A. Orgun, Yan Wang
2010 conf
NaBIC
M. Hadi Mashinchi, Mehmet A. Orgun, M. Reza Mashinchi
2009 conf
ICONIP (2)
M. Hadi Mashinchi, Mehmet A. Orgun, Mashaallah Mashinchi
2009 ch.
Foundations of Computational Intelligence (1)
M. Hadi Mashinchi, Siti Mariyam Hj. Shamsuddin
2008 C conf
AICCSA
M. Hadi Mashinchi, Siti Mariyam Hj. Shamsuddin
2008 conf
ACIS-ICIS
M. Hadi Mashinchi, M. Reza Mashinchi, Mashaallah Mashinchi
2007 conf
GEM
M. Hadi Mashinchi, M. Reza Mashinchi, Siti Mariyam Hj. Shamsuddin, Witold Pedrycz
2007 conf
BIOCOMP
M. Reza Mashinchi, M. Hadi Mashinchi, Ali Selamat
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")