Nai-Hui Chia

55 papers A* 6A 5B 2Journal 37Unranked 5
YearRankTypeTitle / Venue / Authors
2026 A* conf
AAAI
Junhyung Lyle Kim, Nai-Hui Chia, Anastasios Kyrillidis
2026 J jnl
ACM Trans. Quantum Comput.
Nai-Hui Chia, Honghao Fu, Fang Song, Penghui Yao
2026 J jnl
CoRR
Nai-Hui Chia, Atsuya Hasegawa, François Le Gall, Yu-Ching Shen
2025 J jnl
CoRR
Nai-Hui Chia, Yu-Ching Shen
2025 A* conf
FOCS
Maryam Aliakbarpour, Vladimir Braverman, Nai-Hui Chia, Yuhan Liu
2025 J jnl
CoRR
Maryam Aliakbarpour, Vladimir Braverman, Nai-Hui Chia, Yuhan Liu
2025 J jnl
CoRR
Chia-Ying Lin, Nai-Hui Chia, Shih-Han Hung
2025 A* conf
COLT
Nai-Hui Chia, Daniel Liang, Fang Song
2025 J jnl
CoRR
Maryam Aliakbarpour, Vladimir Braverman, Nai-Hui Chia, Chia-Ying Lin, Yuhan Liu, Aadil Oufkir, Yu-Ching Shen
2024 J jnl
CoRR
Junhyung Lyle Kim, Nai-Hui Chia, Anastasios Kyrillidis
2024 J jnl
CoRR
Nai-Hui Chia, Kai-Min Chung, Tzu-Hsiang Huang, Jhih-Wei Shih
2024 J jnl
Quantum
Nai-Hui Chia, Ching-Yi Lai, Han-Hsuan Lin
2024 J jnl
CoRR
Nai-Hui Chia, Min-Hsiu Hsieh, Shih-Han Hung, En-Jui Kuo
2024 J jnl
CoRR
Nai-Hui Chia, Kai-Min Chung, Xiao Liang, Jiahui Liu
2024 J jnl
IACR Cryptol. ePrint Arch.
Nai-Hui Chia, Kai-Min Chung, Xiao Liang, Jiahui Liu
2023 J jnl
CoRR
Nai-Hui Chia, Honghao Fu, Fang Song, Penghui Yao
2023 J jnl
IACR Cryptol. ePrint Arch.
Nai-Hui Chia, Shih-Han Hung
2023 A conf
CCC
Nai-Hui Chia, Kai-Min Chung, Yao-Ching Hsieh, Han-Hsuan Lin, Yao-Ting Lin, Yu-Ching Shen
2023 J jnl
CoRR
Nai-Hui Chia, Kai-Min Chung, Yao-Ching Hsieh, Han-Hsuan Lin, Yao-Ting Lin, Yu-Ching Shen
2023 J jnl
J. ACM
Nai-Hui Chia, Kai-Min Chung, Ching-Yi Lai
2022 J jnl
CoRR
Nai-Hui Chia, Shih-Han Hung
2022 conf
CRYPTO (3)
Nai-Hui Chia, Kai-Min Chung, Xiao Liang, Takashi Yamakawa
2022 A conf
ISLPED
Cheng Chu, Nai-Hui Chia, Lei Jiang, Fan Chen
2022 J jnl
CoRR
Cheng Chu, Nai-Hui Chia, Lei Jiang, Fan Chen
2022 A conf
ITCS
Nai-Hui Chia, Chi-Ning Chou, Jiayu Zhang, Ruizhe Zhang
2022 J jnl
J. ACM
Nai-Hui Chia, András Pal Gilyén, Tongyang Li, Han-Hsuan Lin, Ewin Tang, Chunhao Wang
2021 conf
CRYPTO (1)
Nai-Hui Chia, Kai-Min Chung, Takashi Yamakawa
2021 A* conf
FOCS
Nai-Hui Chia, Kai-Min Chung, Qipeng Liu, Takashi Yamakawa
2021 J jnl
CoRR
Nai-Hui Chia, Kai-Min Chung, Qipeng Liu, Takashi Yamakawa
2021 J jnl
IACR Cryptol. ePrint Arch.
Nai-Hui Chia, Kai-Min Chung, Qipeng Liu, Takashi Yamakawa
2021 J jnl
CoRR
Nai-Hui Chia, Kai-Min Chung, Xiao Liang, Takashi Yamakawa
2021 J jnl
IACR Cryptol. ePrint Arch.
Nai-Hui Chia, Kai-Min Chung, Xiao Liang, Takashi Yamakawa
2021 J jnl
CoRR
Nai-Hui Chia, Chi-Ning Chou, Jiayu Zhang, Ruizhe Zhang
2021 J jnl
Electron. Colloquium Comput. Complex.
Nai-Hui Chia, Chi-Ning Chou, Jiayu Zhang, Ruizhe Zhang
2020 J jnl
CoRR
Nai-Hui Chia, Kai-Min Chung, Takashi Yamakawa
2020 J jnl
IACR Cryptol. ePrint Arch.
Nai-Hui Chia, Kai-Min Chung, Takashi Yamakawa
2020 conf
TCC (3)
Nai-Hui Chia, Kai-Min Chung, Takashi Yamakawa
2020 J jnl
IACR Cryptol. ePrint Arch.
Nai-Hui Chia, Kai-Min Chung, Takashi Yamakawa
2020 J jnl
Quantum
Nai-Hui Chia, Sean Hallgren, Fang Song
2020 A conf
CCC
Scott Aaronson, Nai-Hui Chia, Han-Hsuan Lin, Chunhao Wang, Ruizhe Zhang
2020 A* conf
STOC
Nai-Hui Chia, Kai-Min Chung, Ching-Yi Lai
2020 B conf
ISAAC
Nai-Hui Chia, András Gilyén, Han-Hsuan Lin, Seth Lloyd, Ewin Tang, Chunhao Wang
2020 B conf
MFCS
Nai-Hui Chia, Tongyang Li, Han-Hsuan Lin, Chunhao Wang
2020 A* conf
STOC
Nai-Hui Chia, András Gilyén, Tongyang Li, Han-Hsuan Lin, Ewin Tang, Chunhao Wang
2019 J jnl
CoRR
Nai-Hui Chia, Kai-Min Chung, Takashi Yamakawa
2019 J jnl
CoRR
Nai-Hui Chia, Kai-Min Chung, Ching-Yi Lai
2019 J jnl
CoRR
Scott Aaronson, Nai-Hui Chia, Han-Hsuan Lin, Chunhao Wang, Ruizhe Zhang
2019 J jnl
CoRR
Nai-Hui Chia, Tongyang Li, Han-Hsuan Lin, Chunhao Wang
2019 J jnl
CoRR
Nai-Hui Chia, András Gilyén, Tongyang Li, Han-Hsuan Lin, Ewin Tang, Chunhao Wang
2018 J jnl
CoRR
Nai-Hui Chia, Sean Hallgren, Fang Song
2018 J jnl
CoRR
Nai-Hui Chia, Han-Hsuan Lin, Chunhao Wang
2016 conf
TQC
Nai-Hui Chia, Sean Hallgren
2016 J jnl
CoRR
Nai-Hui Chia, Sean Hallgren
2012 A conf
CIKM
De-Nian Yang, Wang-Chien Lee, Nai-Hui Chia, Mao Ye, Hui-Ju Hung
2012 conf
ITNG
Nai-Hui Chia, Chia-Hung Chien, Wei-Ho Chung, Sy-Yen Kuo
redb/logging_utils.py
← Index redb/logging_utils.py python
"""
Logging utilities and shared enums for REDB.

Contains the ImportResult enum, log formatters, and logger setup functions
used across the ingestor pipeline.
"""
import logging
from logging.handlers import QueueHandler
import os
from enum import Enum


class ImportResult(Enum):
    CORRECTLY = 0
    PARTIALLY = 1
    FAILED = 2
    PENDING = 3
    SKIPPED = 4


class FileNameFormatter(logging.Formatter):
    def format(self, record):
        record.filenameinfo = getattr(record, "filenameinfo", "unknown")
        return super().format(record)


def setup_logger(log_queue, filename):
    logger = logging.getLogger(filename)
    if not logger.handlers:
        if os.getenv("SERVER_ENV") == "prod":
            logger.setLevel(logging.INFO)
        else:
            logger.setLevel(logging.DEBUG)
        handler = QueueHandler(log_queue)
        logger.addHandler(handler)
        logger.propagate = False  # Prevent propagation to parent loggers
    return logger


def logger_thread(log_queue, log_file):
    handler = logging.FileHandler(log_file)
    formatter = FileNameFormatter(
        "%(asctime)s - %(filenameinfo)s - %(levelname)s - %(message)s"
    )
    handler.setFormatter(formatter)

    while True:
        try:
            record = log_queue.get()
            if record is None:
                break
            # Format and write the log record
            message = formatter.format(record)
            handler.stream.write(message + "\n")
            handler.stream.flush()
        except Exception:
            import traceback
            import sys

            print("[ERR] Error in logger thread:", file=sys.stderr)
            traceback.print_exc(file=sys.stderr)


def setup_direct_logger(log_file, filename, pid=None):
    """Setup a logger that writes directly to the log file without using a queue."""
    # Create a unique logger name using the process ID
    logger_name = f"{filename}_{pid}" if pid else filename
    logger = logging.getLogger(logger_name)

    if not logger.handlers:
        handler = logging.FileHandler(log_file)
        formatter = logging.Formatter("%(asctime)s - %(filenameinfo)s - %(levelname)s - %(message)s")
        handler.setFormatter(formatter)
        logger.addHandler(handler)

        if os.getenv("SERVER_ENV") == "prod":
            logger.setLevel(logging.INFO)
        else:
            logger.setLevel(logging.DEBUG)

    # Add filename info to the logger's extra info
    extra = {"filenameinfo": filename}
    logger = logging.LoggerAdapter(logger, extra)

    return logger