Skip to content

xds: apply ext_authz check deadline per-RPC - #13050

Merged
sauravzg merged 1 commit into
masterfrom
dev/sauravzg/extauthz-deadline
Sep 11, 2026
Merged

xds: apply ext_authz check deadline per-RPC#13050
sauravzg merged 1 commit into
masterfrom
dev/sauravzg/extauthz-deadline

Conversation

@sauravzg

Copy link
Copy Markdown
Contributor

withDeadlineAfter() resolves the duration into an absolute Deadline at the moment it is called. ExtAuthzFilter.buildClientInterceptor() applied the configured ext_authz service timeout to the shared AuthorizationStub, so a single deadline was fixed at filter initialization and reused by every RPC the interceptor handled.

Once that timeout elapsed, every subsequent check() was dispatched with an already-expired deadline and failed immediately with DEADLINE_EXCEEDED — failing all RPCs when failure_mode_allow is false, and skipping authorization entirely when it is true.

The timeout is now applied on ExtAuthzClientCall, which is constructed per RPC, so each check gets its own deadline.

withDeadlineAfter() resolves an absolute Deadline when it is called, so
applying it to the shared AuthorizationStub at interceptor construction fixed
one deadline for every RPC. Once the timeout elapsed, all later check RPCs
failed immediately with DEADLINE_EXCEEDED. Apply the timeout to the per-RPC
ExtAuthzClientCall instead.
@sauravzg
sauravzg merged commit 3f439b3 into master Sep 11, 2026
24 of 25 checks passed
@sauravzg
sauravzg deleted the dev/sauravzg/extauthz-deadline branch September 11, 2026 13:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants