envoyproxy/envoy

filters: improve docs & protections around callbacks

Open

#13,737 opened on 2020年10月23日

GitHub で見る
 (11 comments) (0 reactions) (0 assignees)C++ (5,373 forks)batch import
area/httphelp wantedtech debt

Repository metrics

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

説明

We recently ran into an internal problem where an in-house filter was returning a local reply and immediately after returning FilterHeaderStatus::Continue, which ends up confusing the Router filter machinery.

A few things can be done to improve the experience for filter developers:

  1. improve docs around the contract with filters (e.g.: #13678, I'll send another one for docs/root/faq/extensions/contract.rst as well)

  2. enforce more checks to ensure callbacks cannot be called after a local reply has been sent

  3. more assertions around the filter chain state machine

cc: @alyssawilk @mattklein123

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