envoyproxy / xds-relay

Caching, aggregation, and relaying for xDS compliant clients and origin servers
Apache License 2.0
131 stars 29 forks source link

Add endpoint to check stream status #192

Closed jyotimahapatra closed 3 years ago

jyotimahapatra commented 3 years ago

We are experiencing an edge case where the Response is set to null.

➜  xds-relay git:(master) ✗ cs1 -n xdsrelay-staging exec -it xdsrelay-staging-6779b775f6-nh6nx -c xdsrelay-service-gojson -- curl "0:6070/cache/v3-metricsdiscoveryengine-staging-iad_cds"
{
  "Cache": [
    {
      "Key": "v3-metricsdiscoveryengine-staging-iad_cds",
      "Resp": null,
      "Requests": null,
      "ExpirationTime": "2020-11-18T21:37:40.045382228Z"
    }
  ]
}

There are currently 2 hypothesis

  1. There is a race condition bug in orchstrator, due to which the stream is not created with the upstream control plane
  2. The stream is actually present and is broken or overriding nil responses.

This endpoint will help us understand the current status of the stream and the last known version on it.

Signed-off-by: Jyoti Mahapatra jmahapatra@lyft.com