Skip to content

Cannot register "/" path for JSON transcoding #14561

@vsekhar

Description

@vsekhar

Title: Cannot register '/' path for JSON transcoding

Description:
Envoy crashes when starting up with a JSON transcoding path at the root ("/").

Repro steps:

syntax = "proto3";
package svctest;

import "google/api/annotations.proto";

message HelloRequest {}
message HelloResponse {
    string message = 1;
}

service Hello {
    rpc Hello(HelloRequest) returns (HelloResponse) {
        option (google.api.http) = {
            // get: "/root"   // this works
            get: "/"          // this fails
        };
    }
}

Config:

[Unit]
Description=Envoy
After=docker-credential-gcr.service config-firewall.service svc-test-external-hello-v2.service
Wants=docker-credential-gcr.service config-firewall.service svc-test-external-hello-v2.service

[Service]
Restart=always
Environment="HOME=/home/envoy"
# ExecStartPre=/usr/bin/docker-credential-gcr configure-docker --registries=gcr.io
ExecStart=/usr/bin/docker run --name=envoy \
                              --log-opt tag=\"envoy\" \
                              --rm \
                              --user 2000 \
                              --net container:svc-test-external-hello-v2 \
                              gcr.io/endpoints-release/endpoints-runtime:2 \
                              --service svctest.endpoints.project-id.cloud.goog \
                              --listener_port 8081 \
                              --backend grpc://127.0.0.1:8080 \
                              --rollout_strategy managed
ExecStop=/usr/bin/docker stop envoy
ExecStopPost=/usr/bin/docker rm envoy

Logs:
Many repetitions of:

Jan 05 06:38:07 svc-test-external-inst-041z docker[1761]: W0105 06:38:07.000 20 envoy] [20][config]gRPC config for type.googleapis.com/envoy.config.listener.v3.Listener rejected: Error adding/updating listener(s) ingress_listener: transcoding_filter: Cannot register \'svctest.Hello.Hello\' to path matcher

More log here: https://gist.github.com/vsekhar/1f207da2539306092f5341b93ed8dc9e#file-journalctl-u-envoy-service

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