Skip to content

[@grpc/grpc-reflection] lost dependency info #3034

@hxzhao527

Description

@hxzhao527

Problem description

The current implementation of reflection lacks necessary information, causing debugging tools to not work properly.

reproduce steps

  1. simple grpc-js server, e.g. https://github.com/parrotkesha/grpc-bug-yaak
  2. use grpcurl to debug server
$grpcurl -plaintext localhost:8888 describe integration.JobService
Failed to resolve symbol "integration.JobService": proto: message field "integration.JobResponse.data" cannot resolve type: "*.google.protobuf.Struct" not found

Environment

  • OS name, version and architecture: Linux archlinux 6.17.9-arch1-1 x86_64 GNU/Linux
  • Node version : v25.2.1
  • Node installation method : system package manager pacman
  • If applicable, compiler version [e.g. clang 3.8.0-2ubuntu4]
  • Package name and version
    "@grpc/grpc-js": "^1.14.3",
     "@grpc/proto-loader": "^0.8.0",
     "@grpc/reflection": "^1.0.4",
    

reason

Debugging tools need to obtain dependencies between FileDescriptorResponse through the reflection interface to resolve symbols.

reference

  1. GRPC Server Reflection Protocol
  2. google/protobuf/descriptor.proto

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions