envoyproxy/envoy

RTDS snapshot should be pinned to each stream

Open

#10,731 opened on 2020年4月9日

GitHub で見る
 (1 comment) (0 reactions) (0 assignees)C++ (5,373 forks)batch import
area/runtimehelp wanted

Repository metrics

Stars
 (27,997 stars)
PR merge metrics
 (平均マージ 8d) (30d で 378 merged PRs)

説明

Title: we should keep runtime's consistency during a request's lifecycle.

Description: runtime layers should be consistent during processing of a request.

Repro steps:

a bug scenario: filter A reads version 1 of runtime snapshot, filter A stopIteration, waits for a some callback result, say on-demand-rds a new Runtime snapshot (version 2) is pushed by RTDS, filter A resume the filter iteration, and filter B now sees version 2 when it reads from loader.runtime().snapshot()

IMO, We should latch the runtime snapshot to a stream during its creation time.

コントリビューターガイド