"...git@developer.sourcefind.cn:2222/OpenDAS/vllm_cscc.git" did not exist on "186aced5ffb62b62b41eb1beaf2a598ada43351b"
Unverified Commit 845064bc authored by dmitrygx's avatar dmitrygx Committed by GitHub
Browse files

fix(prefill): IPv6-ready bootstrap host resolution for sglang (#3019)


Signed-off-by: default avatarDmitrii Gabor <dmitryg1709@gmail.com>
Co-authored-by: default avatarishandhanani <82981111+ishandhanani@users.noreply.github.com>
parent f10f5942
......@@ -110,12 +110,40 @@ class BaseWorkerHandler(ABC):
bootstrap_port = inner_tm.server_args.disaggregation_bootstrap_port
if inner_tm.server_args.dist_init_addr:
bootstrap_host = socket.gethostbyname(
inner_tm.server_args.dist_init_addr.split(":")[0]
)
# IPv6-ready host extraction and resolution:
# 1) Extract raw host from "host:port" or "[IPv6]:port"/"[IPv6]".
# 2) Resolve via AF_UNSPEC to accept A/AAAA and literals.
# 3) Bracket-wrap IPv6 for safe "{host}:{port}" URL formatting.
addr = inner_tm.server_args.dist_init_addr.strip()
if addr.startswith("["):
end = addr.find("]")
host_core = addr[1:end] if end != -1 else addr.strip("[]")
else:
# Only treat single ':' with numeric suffix as host:port; otherwise it's an IPv6/FQDN host.
if addr.count(":") == 1:
host_candidate, maybe_port = addr.rsplit(":", 1)
host_core = host_candidate if maybe_port.isdigit() else addr
else:
host_core = addr
try:
infos = socket.getaddrinfo(
host_core,
None,
family=socket.AF_UNSPEC,
type=socket.SOCK_STREAM,
)
resolved = infos[0][4][0] # let OS policy pick v4/v6
bootstrap_host = resolved
except socket.gaierror:
# Fallback: keep literal/FQDN as-is (still wrap IPv6 below)
bootstrap_host = host_core
else:
bootstrap_host = get_local_ip_auto()
# Wrap IPv6 literal with brackets so f"{host}:{port}" stays valid.
if ":" in bootstrap_host and not bootstrap_host.startswith("["):
bootstrap_host = f"[{bootstrap_host}]"
return bootstrap_host, bootstrap_port
def _propagate_trace_context_to_sglang(
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment