Vilmar Trevisan

51 papers A* 1A 1B 3Journal 46
YearRankTypeTitle / Venue / Authors
2026 J jnl
Discret. Math.
Maurizio Brunetti, Vilmar Trevisan
2026 J jnl
Discret. Appl. Math.
Nelson Assis, Vilmar Trevisan
2026 J jnl
Eur. J. Comb.
Guilherme Torres, Vilmar Trevisan
2025 J jnl
Electron. J. Comb.
Christoph Helmberg, Guilherme Porto, Guilherme Torres, Vilmar Trevisan
2025 J jnl
Theor. Comput. Sci.
Martin Fürer, Carlos Hoppen, Vilmar Trevisan
2025 A conf
ESA
Martin Fürer, Carlos Hoppen, Vilmar Trevisan
2024 J jnl
Discret. Math.
David Sossa, Vilmar Trevisan
2024 J jnl
Appl. Math. Comput.
Francesco Belardo, Elismar R. Oliveira, Vilmar Trevisan
2023 J jnl
Discret. Appl. Math.
Átila A. Jones, Vilmar Trevisan, Cybele T. M. Vinagre
2021 J jnl
CoRR
Martin Fürer, Carlos Hoppen, Vilmar Trevisan
2021 J jnl
Appl. Math. Comput.
Francesco Belardo, Maurizio Brunetti, Vilmar Trevisan
2021 J jnl
J. Comb. Theory B
David Pokrass Jacobs, Elismar R. Oliveira, Vilmar Trevisan
2020 J jnl
Discuss. Math. Graph Theory
K. Pinheiro, Bruna S. Souza, Vilmar Trevisan
2020 A* conf
ICALP
Martin Fürer, Carlos Hoppen, Vilmar Trevisan
2020 J jnl
Comput. Appl. Math.
Luiz Emilio Allem, Daniel A. Jaume, Gonzalo Molina, Maikon M. Toledo, Vilmar Trevisan
2020 J jnl
Discret. Appl. Math.
Luiz Emilio Allem, Daniel A. Jaume, Gonzalo Molina, Maikon M. Toledo, Vilmar Trevisan
2019 J jnl
Discret. Appl. Math.
Rodrigo Grijó, Leonardo Silva de Lima, Carla Silva Oliveira, Guilherme Porto, Vilmar Trevisan
2018 J jnl
Discret. Appl. Math.
David Pokrass Jacobs, Vilmar Trevisan, Fernando Tura
2018 B conf
LATIN
Martin Fürer, Carlos Hoppen, David Pokrass Jacobs, Vilmar Trevisan
2018 J jnl
Discret. Math.
Lucélia Kowalski Pinheiro, Vilmar Trevisan
2018 J jnl
Electron. J. Comb.
Luiz Emilio Allem, Antonio Cafure, Ezequiel Dratman, Luciano N. Grippo, Martín D. Safe, Vilmar Trevisan
2017 J jnl
Discret. Math.
João Carvalho, Bruna S. Souza, Vilmar Trevisan, Fernando Tura
2017 J jnl
Graphs Comb.
Domingos M. Cardoso, David Pokrass Jacobs, Vilmar Trevisan
2017 J jnl
Discret. Appl. Math.
Kinkar Chandra Das, Eliseu Fritscher, Lucélia Kowalski Pinheiro, Vilmar Trevisan
2017 J jnl
Electron. Notes Discret. Math.
Luiz Emilio Allem, Antonio Cafure, Ezequiel Dratman, Luciano N. Grippo, Martín Darío Safe, Vilmar Trevisan
2016 J jnl
Eur. J. Comb.
Stephen T. Hedetniemi, David Pokrass Jacobs, Vilmar Trevisan
2016 J jnl
SIAM J. Matrix Anal. Appl.
Eliseu Fritscher, Vilmar Trevisan
2016 J jnl
Discret. Math.
Ali Mohammadian, Vilmar Trevisan
2015 J jnl
Electron. Notes Discret. Math.
Renata R. Del-Vecchio, David Pokrass Jacobs, Vilmar Trevisan, Cybele T. M. Vinagre
2015 J jnl
Discret. Math.
Christoph Helmberg, Vilmar Trevisan
2014 J jnl
Discret. Appl. Math.
Israel Rocha, Vilmar Trevisan
2014 J jnl
J. Graph Algorithms Appl.
David Pokrass Jacobs, Vilmar Trevisan, Fernando Tura
2013 J jnl
J. Symb. Comput.
Luiz Emilio Allem, Shuhong Gao, Vilmar Trevisan
2013 J jnl
Discret. Math.
Rodrigo O. Braga, Virginia M. Rodrigues, Vilmar Trevisan
2013 J jnl
CoRR
Eliseu Fritscher, Carlos Hoppen, Vilmar Trevisan
2012 J jnl
Discret. Appl. Math.
Domingos M. Cardoso, Enide Andrade Martins, María Robbiano, Vilmar Trevisan
2011 J jnl
Theor. Comput. Sci.
Carlos Hoppen, Virginia M. Rodrigues, Vilmar Trevisan
2011 J jnl
Electron. Notes Discret. Math.
Oscar Rojo, Israel Rocha, Vilmar Trevisan
2011 J jnl
Appl. Math. Comput.
Luiz Emilio Allem, Vilmar Trevisan
2011 J jnl
Appl. Math. Lett.
Vilmar Trevisan, João B. Carvalho, Renata R. Del-Vecchio, Cybele T. M. Vinagre
2010 J jnl
Comput. Oper. Res.
Catia Maria dos Santos Machado, Sérgio Fernando Mayerle, Vilmar Trevisan
2010 J jnl
Comput. Math. Appl.
María Robbiano, Vilmar Trevisan
2008 J jnl
Theor. Comput. Sci.
Wayne Goddard, Stephen T. Hedetniemi, David Pokrass Jacobs, Vilmar Trevisan
2006 B conf
SIROCCO
Wayne Goddard, Stephen T. Hedetniemi, David Pokrass Jacobs, Vilmar Trevisan
2005 J jnl
J. Algorithms
Kenneth Weber, Vilmar Trevisan, Luiz Felipe Martins
2001 J jnl
Electron. Notes Discret. Math.
David Pokrass Jacobs, Catia Maria dos Santos Machado, Vilmar Trevisan
1995 J jnl
J. Supercomput.
Vilmar Trevisan, João B. Carvalho
1995 J jnl
RITA
Dalcidio Moraes Claudio, Maria Angelica Camargo, Vilmar Trevisan
1993 J jnl
J. Symb. Comput.
Bernard Beauzamy, Vilmar Trevisan, Paul S. Wang
1991 B conf
ISSAC
Vilmar Trevisan, Paul S. Wang
1990 J jnl
SIGSAM Bull.
Vilmar Trevisan
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