egametang/ET · error · RpcException

ERR_ServiceDiscoveryOperationFailed

ERR_ServiceDiscoveryOperationFailed

Error message

route service invalid local cache sceneType: {sceneTypeName}

What it means

Error "route service invalid local cache sceneType: {sceneTypeName}" thrown in egametang/ET.

Source

Thrown at Packages/cn.etetet.servicediscovery/Scripts/Hotfix/Server/ServiceDiscoveryProxySystem.cs:497

            if (compare != 0)
            {
                return compare;
            }

            compare = left.FiberInstanceId.Fiber.CompareTo(right.FiberInstanceId.Fiber);
            if (compare != 0)
            {
                return compare;
            }

            return left.FiberInstanceId.InstanceId.CompareTo(right.FiberInstanceId.InstanceId);
        }

        private static void ValidateServiceInfo(ServiceInfo serviceInfo, string sceneTypeName)
        {
            if (serviceInfo == null || string.IsNullOrWhiteSpace(serviceInfo.SceneName) || serviceInfo.ActorId == default)
            {
                throw new RpcException(ErrorCode.ERR_ServiceDiscoveryOperationFailed,
                    $"route service invalid local cache sceneType: {sceneTypeName}");
            }
        }

        private static async ETTask WaitResolveRetryDelayAsync(this ServiceDiscoveryProxy self)
        {
            int delay = self.ServiceResolveRetryIntervalMs;
            if (delay <= 0)
            {
                delay = 1;
            }

            Scene root = self.Root();
            EntityRef<Scene> rootRef = root;
            await root.TimerComponent.WaitAsync(delay);
            root = rootRef;
            if (root == null)
            {

View on GitHub (pinned to 5cab01f7a8)

Solutions

  1. 检查该 sceneType 的服务是否已正确注册且实例存活
  2. 清除本地路由缓存后重新向 ServiceDiscovery 解析该 sceneType 的路由
  3. 确认注册时 ServiceRoute 的 ActorId 不为空

Example fix

等待服务重新注册后重试解析,或在调用前校验 route.ActorId 非空再使用缓存路由。

When it happens

Trigger: service discovery 本地路由缓存中该 sceneType 对应的 ServiceRoute 已存在但内容无效(ActorId 为空或实例已失效)

Common situations: See trigger scenarios.


AI-assisted analysis of egametang/ET@5cab01f7a8 (2026-08-13). Data as JSON: /api/errors/ad30dd505f833979. Report an issue: GitHub.