Skip to content

Conversation

@gavin-aguiar
Copy link
Contributor

@gavin-aguiar gavin-aguiar commented Nov 19, 2025

Description

Issue:
HTTP trigger functions with large payloads fail silently in Python 3.13 using the proxy worker. The invocation request never reaches the worker's handler method, preventing the function from executing.

Root Cause:
The proxy worker uses incorrect gRPC channel option names (grpc_local.max_receive_message_length and grpc_local.max_send_message_length) instead of the correct names (grpc.max_receive_message_length and grpc.max_send_message_length). This causes gRPC to ignore the configuration and fall back to the default 4MB message size limit, silently dropping messages that exceed this threshold.

Fixes #


Pull Request Checklist

Host-Worker Contract

  • Does this PR impact the host-worker contract (e.g., gRPC messages, shared interfaces)?
    • If yes, have the changes been applied to:
      • azure_functions_worker (Python <= 3.12)
      • proxy_worker (Python >= 3.13)
    • If no, please explain why:

Worker Execution Logic

  • Does this PR affect worker execution logic (e.g., function invocation, bindings, lifecycle)?
    If yes, please answer the following:

Python Version Coverage

  • Does this change apply to both Python <=3.12 and 3.13+?
  • If yes, have the changes been made to:
    • azure_functions_worker (Python <= 3.12)
    • runtimes/v1 / runtimes/v2 (Python >= 3.13)
  • If no, please explain why:

Programming Model Compatibility (for Python 3.13+)

  • Does this change apply to both:
    • V1 programming model (runtimes/v1)?
    • V2 programming model (runtimes/v2)?
  • Explanation (if limited to one model):

@gavin-aguiar gavin-aguiar enabled auto-merge (squash) November 19, 2025 23:49
@gavin-aguiar gavin-aguiar merged commit 4137bfd into dev Nov 20, 2025
37 of 39 checks passed
@gavin-aguiar gavin-aguiar deleted the gaaguiar/large_blob_fix branch November 20, 2025 15:40
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.

3 participants