temporalio / temporal

Temporal service

Home Page:https://docs.temporal.io

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Limit failure cause depth

cretz opened this issue · comments

Describe the solution you'd like

Users can set very deep failure causes, and once it gets past 30 or so it breaks some protobuf parsers (any based on upb like Python and maybe Ruby/C/C++). We should limit the depth to something like 10/15. Can discuss implementation design on how this limitation occurs (not sure we should reject the failure but up to implementer). I can also provide more exact numbers on how deep before Python fails if that information is needed.

Server is not crack open those failure and just pass it along. It would be hard for server to arbitrary determine what is the cutoff depth.