envoyproxy/envoy

filters: improve docs & protections around callbacks

Open

#13,737 创建于 2020年10月23日

在 GitHub 查看
 (11 评论) (0 反应) (0 负责人)C++ (5,373 fork)batch import
area/httphelp wantedtech debt

仓库指标

Star
 (27,997 star)
PR 合并指标
 (平均合并 8天) (30 天内合并 378 个 PR)

描述

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

贡献者指南