Crash the server correctly during error (#2231)

This commit is contained in:
Lianmin Zheng
2024-11-28 00:22:39 -08:00
committed by GitHub
parent db674e3d24
commit d4fc1a70e3
46 changed files with 147 additions and 139 deletions

View File

@@ -15,9 +15,11 @@
import dataclasses
import logging
import signal
from collections import OrderedDict
from typing import List, Union
import psutil
import zmq
from sglang.srt.hf_transformers_utils import get_tokenizer
@@ -28,7 +30,7 @@ from sglang.srt.managers.io_struct import (
)
from sglang.srt.managers.schedule_batch import FINISH_MATCHED_STR, FINISH_MATCHED_TOKEN
from sglang.srt.server_args import PortArgs, ServerArgs
from sglang.srt.utils import configure_logger, get_zmq_socket, kill_parent_process
from sglang.srt.utils import configure_logger, get_zmq_socket
from sglang.utils import find_printable_text, get_exception_traceback
logger = logging.getLogger(__name__)
@@ -193,11 +195,12 @@ def run_detokenizer_process(
port_args: PortArgs,
):
configure_logger(server_args)
parent_process = psutil.Process().parent()
try:
manager = DetokenizerManager(server_args, port_args)
manager.event_loop()
except Exception:
msg = get_exception_traceback()
logger.error(msg)
kill_parent_process()
traceback = get_exception_traceback()
logger.error(f"DetokenizerManager hit an exception: {traceback}")
parent_process.send_signal(signal.SIGQUIT)