Skip to content

Add ability to update GrpcCapabilities during specialization #8983

Closed
@brettsam

Description

@brettsam

For dotnet-isolated, we'll eventually need the ability for a worker, during specialization, to report different capabilities than the placeholder worker ran with.

We need to add the ability for a worker to return back new capabilities during an EnvironmenReloadResponse, which will then be applied to the GrpcWorkerChannel's capabilities.

We should take this opportunity to refactor the GrpcCapabilities, as well. We should not be checking and parsing capabilities on every invocation like this:

bool excludeHttpTriggerMetadata = !string.IsNullOrEmpty(capabilities.GetCapabilityState(RpcWorkerConstants.RpcHttpTriggerMetadataRemoved));
. Instead, we should parse this upfront and just pass bools around. I benchmarked this -- it adds ~15 nanoseconds. Not crazy, but still not needed on every invocation.

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions